使用通知样式 Firebase 云消息传递发送任意数据

Kar*_*olf 5 android firebase google-cloud-functions firebase-cloud-messaging

我有一个简短的问题。我想从云函数发送自定义值,该函数侦听 Firebase 数据库中的 onWrite 事件。我的云功能代码:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.pushNotification = functions.database.ref('/chats/notifications/{pushId}').onWrite( event => {
  var values = event.data.val();

const payload = {
    notification: {
        title: values.username,
        body: values.message,
        sound: "default",
        displayName: values.username,
        UiD:  values.recieverUiD
    },
};
const options = {
    priority: "high"
};
return admin.messaging().sendToTopic(values.recieverUiD, payload, options);});
Run Code Online (Sandbox Code Playgroud)

现在数据库结构如下所示:

聊天

-通知

-一些ID

-用户名:fdsdf

-uid:9043554

如何将 UiD 发送到我的设备?代码中的方式不适用于 displayName...我该怎么做

Rob*_*kal 4

您可以通过在负载中添加与通知键相同级别的数据键来在通知消息中传递任意键值对:

{"notification": {...},
"data" : {
      "uid": 9043554
    }
}
Run Code Online (Sandbox Code Playgroud)