【问题标题】:How to subscribe to a topic in flutter FCM?如何在 Flutter FCM 中订阅主题?
【发布时间】:2019-04-13 15:09:57
【问题描述】:

我是新来的,在我的应用程序中,我需要使用全局或主题订阅来实现 FCM。我使用设备令牌成功实现了 FCM,但需要向所有设备发送通知。我们该如何解决这个问题?

【问题讨论】:

    标签: firebase dart flutter firebase-cloud-messaging


    【解决方案1】:

    您可以使用 subscribeToTopic 在登录成功或您要订阅的地方向所有设备发送通知。 示例代码:

    FirebaseMessaging firebaseMessaging = new FirebaseMessaging();
    
      void fcmSubscribe() {
        firebaseMessaging.subscribeToTopic('TopicToListen');
      }
    
      void fcmUnSubscribe() {
        firebaseMessaging.unsubscribeFromTopic('TopicToListen');
      }
    

    使用firebase控制台测试主题订阅,通过在目标中选择主题将通知发送到设备正在侦听的主题

    【讨论】:

    • 调用 subscribeToTopic 时得到 java.lang.NoSuchMethodError: FirebaseMessaging.subscribeToTopic(Unknown Source)。
    • 有没有办法在flutter web上做到这一点
    • @AbdulmalekDery 我还没有尝试过web part,希望有人能回答这个问题。
    • 能否请您更新答案以匹配当前版本的flutter
    【解决方案2】:

    我可以使用以下代码:

    await FirebaseMessaging.instance.subscribeToTopic('TopicToListen');
    

    【讨论】:

      【解决方案3】:

      flutter网页版需要调用topic的api

          Uri.parse('https://iid.googleapis.com/iid/v1/'+_token+'/rel/topics/'+topic),
                  headers: <String, String>{
                    'Content-Type': 'application/json',
                    'Authorization':
                        'key=YOUR_FCM_KEY'
                  };
      

      token 是 firebase 生成的令牌

      【讨论】:

        猜你喜欢
        • 2018-06-17
        • 2017-09-07
        • 2017-05-07
        • 1970-01-01
        • 2016-10-31
        • 2017-08-14
        • 2019-12-21
        • 2017-02-24
        • 1970-01-01
        相关资源
        最近更新 更多