我使用FCM(Firebase雲消息傳遞)來接收推送通知。我如何知道推送通知是否在iOS中傳遞?
一切都在爲我工作。
但是從我的服務器端,他們會不斷地發送通知到我的應用程序與時間身體一段時間。
現在我不得不只推送一次通知,當我從服務器獲取時間達到當前時間。
在當前時間之前和當前時間之後不應顯示通知。
我不知道如何做到這一點。
任何人都可以解釋是否有任何方法可以得到這個。
我使用FCM(Firebase雲消息傳遞)來接收推送通知。我如何知道推送通知是否在iOS中傳遞?
一切都在爲我工作。
但是從我的服務器端,他們會不斷地發送通知到我的應用程序與時間身體一段時間。
現在我不得不只推送一次通知,當我從服務器獲取時間達到當前時間。
在當前時間之前和當前時間之後不應顯示通知。
我不知道如何做到這一點。
任何人都可以解釋是否有任何方法可以得到這個。
您可以通過在服務器上執行cron作業來自定義通知到達時間表。
如果您使用任何API
將通知推送到任何設備,只需在調用後獲取成功消息或傳遞的消息即可。
我在一個PHP服務器上創建了一個端點,它在我的實時數據庫中採用一個引用notifications/$autoId
的autoId。通知的發件人將通知數據寫入數據庫,如果成功,則發送POST請求至http://myserver.com/notifications/$autoId/send
。
這似乎沒有認證,但是沒有人知道通知ID是從創建它的用戶和接收它的用戶分開發送的。在服務器端,當使用FCM成功發送消息時,我們可以設置{"sent": true}
以防止它多次發送。當用戶收到通知時,我們設置{"received": true}
。
{
"notifications": {
"$autoId": {
"sent": false,
"received": "false",
"userInfo": {
"notificationId": "$autoId",
"toId": "$toUid",
"fromId": "$fromUid"
}
}
}
}
這是不完全清楚你在問什麼,但推送通知是一個「盡力而爲」的服務;沒有跡象表明郵件已發送 – Paulw11
您必須發送靜音通知。然後在需要時顯示本地通知。看看這裏:http://stackoverflow.com/questions/20741618/didreceiveremotenotificationfetchcompletionhandler-not-being-called-when-app-is –
@DmytroShvecov如何區分無聲通知和推送通知? – Himanth