onPlatformMessage property Null safety

PlatformMessageCallback? onPlatformMessage
Deprecated('Instead of calling this callback, use ServicesBinding.instance.channelBuffers.push. ' 'This feature was deprecated after v2.1.0-10.0.pre.')">@Deprecated('Instead of calling this callback, use ServicesBinding.instance.channelBuffers.push. ' 'This feature was deprecated after v2.1.0-10.0.pre.')override

Called whenever this window receives a message from a platform-specific plugin.

Accessing this value returns the value contained in the PlatformDispatcher singleton, so instead of getting it from here, you should consider getting it from WidgetsBinding.instance.platformDispatcher instead (or, when WidgetsBinding isn't available, from PlatformDispatcher.instance). The reason this value forwards to the PlatformDispatcher is to provide convenience for applications that only use a single main window.

The name parameter determines which plugin sent the message. The data parameter is the payload and is typically UTF-8 encoded JSON but can be arbitrary data.

Message handlers must call the function given in the callback parameter. If the handler does not need to respond, the handler should pass null to the callback.

The framework invokes this callback in the same zone in which the callback was set.

Implementation

@Deprecated(
  'Instead of calling this callback, use ServicesBinding.instance.channelBuffers.push. '
  'This feature was deprecated after v2.1.0-10.0.pre.'
)
@override
ui.PlatformMessageCallback? get onPlatformMessage => platformDispatcher.onPlatformMessage;
void onPlatformMessage=(PlatformMessageCallback? callback)
Deprecated('Instead of setting this callback, use ServicesBinding.instance.defaultBinaryMessenger.setMessageHandler. ' 'This feature was deprecated after v2.1.0-10.0.pre.')">@Deprecated('Instead of setting this callback, use ServicesBinding.instance.defaultBinaryMessenger.setMessageHandler. ' 'This feature was deprecated after v2.1.0-10.0.pre.')override

Implementation

@Deprecated(
  'Instead of setting this callback, use ServicesBinding.instance.defaultBinaryMessenger.setMessageHandler. '
  'This feature was deprecated after v2.1.0-10.0.pre.'
)
@override
set onPlatformMessage(ui.PlatformMessageCallback? callback) {
  platformDispatcher.onPlatformMessage = callback;
}