今天,我在 ~30 分钟内收到了重复的 FCM 推送通知。这些推送通知在内容方面是相同的,并且推送通知只发送一次。以下是我收到这些推送通知的时间线片段:
1 01-15 10:41:30.349+0200 MyPushListenerService onMessageReceived
1 01-15 10:43:30.004+0200 MyPushListenerService onMessageReceived
1 01-15 10:47:31.665+0200 MyPushListenerService onMessageReceived
1 01-15 10:55:32.062+0200 MyPushListenerService onMessageReceived
为什么会这样?
Firebase 如何确认推送通知已送达?是否有重试机制?
首先,您应该检查触发 FCM 发送消息的原因。 如果它是由 Firebase Google Cloud Function 触发的,则可以使用 Firebase 控制台查看 index.js 文件中的日志。
此外,您还可以通过获取"响应"并将其记录在 Firebase 控制台中来检查 Firebase 是否发送了消息。
例如,在云函数中:
return admin.messaging().sendToDevice(token_id, payload).then(response => {
console.log('notification sent successfully: ' + response);
}).catch((error) => {
console.log('notification sent error ' + error);
});
});
然后查看您的 Firebase 控制台、函数日志 - 看看输出是什么。