gpt4 book ai didi

android - 如何使用云功能向具有 FCM token 的多个设备发送推送通知

转载 作者:行者123 更新时间:2023-11-29 00:03:19 24 4
gpt4 key购买 nike

首先,我生成了一个 FCM token 并存储在 firestore 中。之后我写了一个云函数来发送基于 FCM token 的通知。我部署了云功能,它说成功发送了状态正常的通知。但它不会显示在移动设备中。我的 Index.js 是

'use strict';
const functions = require('firebase-functions');
const Firestore = require('@google-cloud/firestore');
const admin = require('firebase-admin');
const firestore = new Firestore();
const db = admin.firestore();
admin.initializeApp(functions.config().firebase);
exports.hellouser = functions.firestore
.document('users/{token}')
.onWrite(event =>{
var document = event.data.data();
console.log("tokens",document);
var token = ['cdNN0AbYKU0:APA91bEyL0zo3zwHZD8H43Vp7bxAfYgehlVI8LrKktPO2eGuByVDdioysIGxHe5wocwq8ynxRToJPpOve_M59YY_MIRbWLnF9AIgoTwJORXZbw6VBw7']// this is my FCM token.
if(
const payload = {
notification: {
title: "Message",
body: "hi hello",
sound: "default"
}
};
return admin.messaging().sendToDevice(token, payload).then((response)=> {

console.info("Successfully sent notification")
}).catch(function(error) {
console.warn("Error sending notification " , error)
});
});

如何基于FCMtoken发送通知。

最佳答案

如果它是您使用的确切代码,则检查 if( 附近的语法。这可能对您有帮助。
接下来编写一些代码来遍历您的 response 对象. Firebase 可能会获取您的 token 和有效负载,对其进行处理并返回 200 OK 响应,但在响应中您将遇到错误。
响应的一般结构如下:

{ 结果:
[ {//与一个 token 相关的内容 },{//与一个 token 相关的内容 } ],
canonicalRegistrationTokenCount: 0,
失败次数:1,
成功次数:0,
multicastId: SOME_LONG_NUMBER }


请记住,response.results 数组包含发送到 token 的每条消息的状态,其顺序与您的 中的 token 相同token 数组。

您可以在Firebase Documentation 中查看所有可能的错误.

如果 response.failureCount > 0 则没有消息发送,您应该在 response.results 中得到相应的错误。
另请学习关于 options 变量。 options.priority 必须是 'high' 以保证快速传递消息。

也许这会有所帮助。

关于android - 如何使用云功能向具有 FCM token 的多个设备发送推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47530252/

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