编辑:检查我的客户应用程序的日志,可以看到确实收到了该消息,但是无论该消息是在前台还是在后台,都没有推送通知(在使用控制台的地方,它确实显示了推送)通知)。
我已遵循文档并实施了所有内容。当我尝试从Firebase控制台云消息传递工具向主题发送消息时,它可以正常工作,但是当我尝试通过云函数发送消息时,它返回成功的结果,但客户端从未收到通知。 >
这是我的云功能。它用于通知餐馆老板新的预订:
function sendNotification(businessID: string, partySize : number, arrivalTime : string){
const message = {
data: {
content: 'New reservation for '+ partySize + 'people arriving at ' + arrivalTime
},
topic: businessID
};
// Send a message to devices subscribed to the provided topic.
return admin.messaging().send(message)
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', response);
})
.catch((error) => {
console.log('Error sending message:', error);
});
}
在通过此侦听器进行新的预订时调用此函数:
exports.newReservation = functions.firestore.document('claimed_deals/{claimedDealID}').onCreate((snap, context) => {
const newReservationDoc = snap.data();
if (newClaimedDeal !== undefined) {
const userID = newReservationDoc .customer_ID;
const dealID = newReservationDoc .deal_ID;
const promises: any = [];
//other promises
promises.push(sendNotification(newReservationDoc .business_ID, newReservationDoc.customer_party_size, newReservationDoc.arrivalTime));
return Promise.all(promises);
} else {
return null;
};
});
因此,我不断收到此日志Successfully sent message...
,但是客户端应用程序上什么也没有显示。当我尝试从控制台工具手动操作到同一家餐厅时,我毫无问题地收到通知。其他餐厅也一样。我在说什么错?