entrypoint function

Future<void> entrypoint(
  1. List<String> args
)

Implementation

@pragma('vm:entry-point')
Future<void> entrypoint(List<String> args) async {
  WidgetsFlutterBinding.ensureInitialized();
  var methodChannel =
      const MethodChannel('flutter_pushed_messaging', JSONMethodCodec());

  try {
    final int rawHandle = int.parse(args[0]);
    final message = json.decode(args[1]);
    await methodChannel.invokeMethod<dynamic>(
        "log", {"event": "Flutter BG Message: $message"});
    if (rawHandle != 0) {
      final callbackHandle = CallbackHandle.fromRawHandle(rawHandle);
      final onMessage = PluginUtilities.getCallbackFromHandle(callbackHandle);
      if (onMessage != null) await onMessage(message);
    }
  } catch (e) {
    await methodChannel
        .invokeMethod<dynamic>("log", {"event": "BG Message: $e"});
  }
}