PushListener constructor

PushListener(
  1. MethodChannel channel, {
  2. ListenerPush? listener,
})

Implementation

PushListener(MethodChannel channel, {this.listener}) {
  // 绑定监听器
  channel.setMethodCallHandler((methodCall) async {
    // 解析参数

    switch (methodCall.method) {
      case Config.methodOnListener:
        Map<dynamic, dynamic>? arguments = methodCall.arguments;
        if (arguments != null) {
          var params = arguments["params"];
          if (params != null) {
            var jsonMap = json.decode(
              params,
            );
            var pushModel = PushModel.fromJson(jsonMap);
            pushModel.type=arguments["type"];
            if (listener != null) {
              listener!(pushModel);
            }
          }
        }
        break;
      default:
        throw MissingPluginException();
    }
  });
}