onMessageReceived property

  1. @override
Stream<HuaweiPushMessage> get onMessageReceived
override

设置推送消息监听器

Implementation

@override
Stream<HuaweiPushMessage> get onMessageReceived {
  _messageStreamController ??= StreamController<HuaweiPushMessage>.broadcast(
    onListen: () {
      _messageEventChannel.receiveBroadcastStream().listen(
        (dynamic event) {
          if (event is Map<String, dynamic>) {
            final message = HuaweiPushMessage.fromMap(event);
            _messageStreamController?.add(message);
          }
        },
        onError: (dynamic error) {
          debugPrint('HuaweiPush message stream error: $error');
          _messageStreamController?.addError(error);
        },
      );
    },
  );
  return _messageStreamController!.stream;
}