gpt4 book ai didi

firebase - Flutter:关于数据更改的 Firebase 推送通知

转载 作者:IT王子 更新时间:2023-10-29 06:50:06 32 4
gpt4 key购买 nike

收到评论后,我已将以下代码部署到我的 firebase 项目并成功部署!但是没有通知发送给我。请在此处查看我的 Firebase 实时数据库屏幕截图,以便更好地理解。

[现在已解决:它将仅向一个 ID(即我的管理设备)发送通知]

工作代码:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firbase);
exports.codeformypeople = functions.database.ref('items/{id}').onWrite(evt => {

const payload = {
notification: { title: 'New Customer Requested', body: 'Touch to Open The App', badge: '1', sound: 'default', }
};
const token ="Lsn-bHfBWC6igTfWQ1-h7GoFMxaDWayKIpWCrzC";//replace with ur token

if (token) {
console.log('Toke is availabel .');
return admin.messaging().sendToDevice(token, payload);
} else {
console.log('token error');
}
});

[ Mydatabase Structure[1]

查看此 VIDEO LINK了解更多详情

注意:如果你的应用程序被打开并最小化,那么它会显示通知,但是如果应用程序被打开并且你正在使用,或者如果应用程序被终止强制关闭那么它就不会工作!!

最佳答案

您可以使用 firebase 云函数来触发通知。这是我用来触发通知的云功能片段:

const functions = require('firebase-functions');

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

exports.pushNotification = functions.database.ref('/Notifications/{pushId}')
.onWrite(( change,context) => {
console.log("Push Notification event triggered");
var request = change.after.val();
var payload = {
data:{
username: request.userName,
}
};
admin.messaging().sendToDevice(request.userTokenId, payload)
.then(function(response){
console.log("Successfully sent message: ",response);
console.log(response.results[0].error);
})
.catch(function(error){
console.log("Error sending message: ", error)
})
})

下面我提供了我的通知结构,你可以在下面看到。如果有任何新数据被推送到数据库通知节点,这个函数就会被触发。要查看触发此功能时得到的输出/错误,请转至 firebase 管理面板 > 功能 > 日志。

enter image description here

你已经完美地部署了功能代码,但是你忘记在你的数据库中添加刷新 tokenId 正如你在上图中看到的 我正在我的数据库和功能 admin.messaging 中保存 userTokenId ().sendToDevice(request.userTokenId, payload) 我正在使用那个 tokenId,这个 tokenId 用于向特定设备发送通知,你可以使用 FirebaseInstanceId.getInstance().getToken() 获取这个 tokenId 并将其保存在您的 fbproject1 > items 数据库结构中。请引用this & this

关于firebase - Flutter:关于数据更改的 Firebase 推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50663590/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com