我正在使用FCM(Firebase云消息传递)来接收推送通知。
一切都对我有用。
但是从我的服务器端,他们会在一段时间内连续向我的应用发送通知。
现在我必须只通知一次从服务器获取的时间到达当前时间。
在当前时间之前和当前时间之后不应显示通知。
我不知道该怎么做。
任何人都可以解释是否有办法解决这个问题。
答案 0 :(得分:1)
您可以通过在服务器上实施cron作业来自定义通知到达时间表。
如果您使用任何API
将通知推送到任何设备,只需在致电后获取成功消息或已发送消息。
答案 1 :(得分:1)
我在PHP服务器上创建了一个端点,该端点在我的实时数据库中引用了一个引用notifications/$autoId
的autoId。通知的发件人将通知数据写入数据库,如果成功,则向http://myserver.com/notifications/$autoId/send
发送POST请求。
这似乎没有身份验证,但是没有人会知道通知ID是从创建它的用户和接收它的用户发送的。在服务器端,当消息使用FCM成功发送时,我们可以设置{"sent": true}
以防止它被多次发送。当用户收到通知时,我们设置{"received": true}
。
{
"notifications": {
"$autoId": {
"sent": false,
"received": "false",
"userInfo": {
"notificationId": "$autoId",
"toId": "$toUid",
"fromId": "$fromUid"
}
}
}
}