无法使用发送到主题选项接收云功能通知

时间:2021-02-12 06:59:04

标签: flutter dart firebase-realtime-database google-cloud-functions

我正在使用 Flutter 和 Dart 来触发云功能推送通知,但是我的设备似乎无法收到任何通知。有人能告诉我我的代码有什么问题吗?

const functions = require("firebase-functions");
const admin = require("firebase-admin");

admin.initializeApp(); 
exports.myFunction = functions.database.instance("fm-90011")
    .ref("orders/{userId}/{id}")
    .onCreate((snapshot, context) => {  
      console.log(snapshot.val());
      console.log("Inside push notification");
      return admin.messaging().sendToTopic("orders",{notification:{title:"New Order",body:'Tap to view',clickAction:'FLUTTER_NOTIFICATION_CLICK'}});
    });

以下是 firebase 实时数据库中订单结构的样子。 enter image description here

在云函数日志中,我得到了如下所示的日志消息:

enter image description here

1 个答案:

答案 0 :(得分:1)

基于发布/订阅模型,FCM 主题消息传递允许您向选择加入特定主题的多个设备发送消息。您可以根据需要编写主题消息,FCM 会处理路由并将消息可靠地传送到正确的设备。

要向主题发送通知,设备必须订阅该主题。

这里是如何为设备订阅主题

....
 FirebaseMessaging _firebaseMessaging = FirebaseMessaging.instance;
//subscribe to a notification
  _firebaseMessaging.subscribeToTopic("orders");

在添加订单前确保用户已订阅订单。

相关问题