当前位置: 首页 > 知识库问答 >
问题:

Flutter:前台通知在firebase消息传递中不起作用

姜钧
2023-03-14
  FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin=new FlutterLocalNotificationsPlugin();

  static  FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
  static StreamController<Map<String, dynamic>> _onMessageStreamController =
  StreamController.broadcast();
  static StreamController<Map<String, dynamic>> _streamController =
  StreamController.broadcast();
  static final Stream<Map<String, dynamic>> onFcmMessage =
      _streamController.stream;

  @override
  void initState() {
    super.initState();

    var android=AndroidInitializationSettings('mipmap/ic_launcher.png');
    var ios=IOSInitializationSettings();
    var platform=new  InitializationSettings(android,ios);
    flutterLocalNotificationsPlugin.initialize(platform);

    firebaseCloudMessaging_Listeners();
  }
 void firebaseCloudMessaging_Listeners() {

if (Platform.isIOS) iOS_Permission();

_firebaseMessaging.getToken().then((token) {
  print("FCM TOKEN--" + token);
});
_firebaseMessaging.configure(
  onMessage: (Map<String, dynamic> message) async {
    print('on message $message');
    showNotification(message);
  },
  onResume: (Map<String, dynamic> message) async {
    print('on resume $message');
  },
  onLaunch: (Map<String, dynamic> message) async {
    print('on launch $message');
  },
);


}
 void showNotification(Map<String, dynamic> msg) async{
    print(msg);
    var android = new AndroidNotificationDetails(
        'my_package', 'my_organization', 'notification_channel', importance: Importance.Max, priority: Priority.High);
    var iOS = new IOSNotificationDetails();
    var platform=new NotificationDetails(android, iOS);
    await flutterLocalNotificationsPlugin.show(
      0,'My title', 'This is my custom Notification', platform,);
  }

和Firebase响应

{通知:{Title:测试标题,正文:测试通知文本},数据:{orderid:2,click_action:FLUTTER_NOTIFICATION_CLICK,订单名称:farhana}}

共有1个答案

潘安平
2023-03-14

GitHub存储库中记录了一个关于该包的活动问题。Firebase消息传递和本地通知在iOS上无法协同工作,因为您只能为通知注册一个代理。

查看:https://github.com/maikub/flutter_local_notifications/issues/111

同样也有一个活动的flutter问题:https://github.com/flutter/flutter/issues/22099

 类似资料:
  • 我正在尝试使用FireBase云消息传递。我正在接收令牌,但它没有从控制台收到任何通知。这是我的舱单: 我的代码与示例中的代码几乎相同: 我在这里检查了一个问题,Firebase云消息通知未被设备接收,但仍然无法工作。

  • 我是flutter的新手,我只是试图接收firebase推送通知到我的flutter应用程序。当应用程序关闭时,在后台接收推送通知。但是当应用程序打开时,推送通知正在接收,但它不显示警报通知(如果它打开了,我想在我的应用程序中显示推送通知的标题和正文作为警报)。这是我的代码。 谁能帮我做这个吗?

  • 添加了从FCM到Facebook的API密钥 但从FB控制台“推送活动设置验证”到有效的“您的设备令牌”-不工作 错误: 无法验证用于发送消息的发件人帐户。这可能是由于无效的项目号作为密钥发送,或者密钥是有效的,但禁用了FCM服务,或者我们的服务器没有在服务器密钥IP中列入白名单。 是什么导致了这些问题?有什么日志我可以看吗?

  • 在后台或关机模式下,我无法让我的应用程序接收通知。我遵循了Firebase指南,了解了如何在我的应用程序中实现Firebase消息传递。以前我使用过GCM(谷歌云消息),它运行得很好,但自从升级到Firebase后,我无法让它工作。一旦启动我的应用程序,我在后台或关机时发送的所有通知(通过firebase控制台通知)都会被发送。 我有: 已在Firebase控制台上创建项目 值得一提的是,我已经通

  • 可以使用第三方服务发送推送通知而不依赖谷歌的Firebase云消息(FCM)吗? 如果应用程序默认不包含Firebase包,那么创建/使用自定义框架是否具有与Firebase相似的功能集?或者Firebase是否以某种方式集成在Android操作系统中,而这种方式是从应用程序外部进行的?

  • 我一直试图用. onUpdate()触发器推送通知,但它不起作用。我不知道出了什么问题,因为我在文档上找到的任何东西都毫无用处,这是我第一次和ode.js.一起工作 当任何产品使用Firebase Cloud Functions(在Firebase实时数据库中)更新时,我想通知用户(使用Firebase消息传递),这是在提交订单之后,并且要求产品库存是 集合的结构如下:产品(集合)-