How to subscribe to a topic in flutter FCM?

Viewed 20026

I'm a new one in a flutter and in my app, I need to implement FCM with global or with a topic subscription. I successfully implemented the FCM with device token but need to send a notification to all device. how can we fix this?

3 Answers

You can use subscribeToTopic to send a notification to all devices on login success or somewhere where you want to subscribe. sample code:

FirebaseMessaging firebaseMessaging = new FirebaseMessaging();

  void fcmSubscribe() {
    firebaseMessaging.subscribeToTopic('TopicToListen');
  }

  void fcmUnSubscribe() {
    firebaseMessaging.unsubscribeFromTopic('TopicToListen');
  }

Test the topic subscription by using firebase console to send the notification to a topic that the device is listening by choosing the topic in target

I could do it using the following code:

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

For web version in flutter you need to call the api for topic

    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 is the firebase generated token

Related