我正在使用 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'}});
});
在云函数日志中,我得到了如下所示的日志消息:
答案 0 :(得分:1)
基于发布/订阅模型,FCM 主题消息传递允许您向选择加入特定主题的多个设备发送消息。您可以根据需要编写主题消息,FCM 会处理路由并将消息可靠地传送到正确的设备。
要向主题发送通知,设备必须订阅该主题。
这里是如何为设备订阅主题
....
FirebaseMessaging _firebaseMessaging = FirebaseMessaging.instance;
//subscribe to a notification
_firebaseMessaging.subscribeToTopic("orders");
在添加订单前确保用户已订阅订单。