發現從Firebase控制檯發送通知後,如果應用程序在後臺,則不會調用onMessageReceived()方法。未從http請求調用Firebase onMessageReceived()
因此,我遵循人們的建議使用HTTP POST請求。 我已經使用郵遞員使POST請求
https://fcm.googleapis.com/fcm/send
用2頭:
內容類型:應用/ JSON
授權:鍵= ALSA ...... .6ryLiI
和身體
{
"to" : "fzgh-aHiOd8:APA91bFcKuwuVq_2gbLydHkAZf9XLUzm9vPalh7EUQT3Kyj8mcW9raAs9QvxbHaGJ4-U4RnUJwJ3UaEarbMXiQ8rHnsx9UuYBDrOI9tJYB78_Z3VVR1l7H_6PGpCkdgINx8a4vvMXD9q",
"notification" : {
"body" : "Sales!",
"title" : "ID Phone",
"icon" : "myicon"
},
"data" : {
"data" : "sales",
}
}
現在,通知確實進入我的應用程序(這很好),但它仍然不是我想要的自定義通知。即onMessageReceived()仍然沒有被調用。
有什麼我失蹤?
檢查是否收到數據。因爲您的註冊人ID或服務器API密鑰可能不正確 – Killer
正在接收數據。但仍然沒有工作。謝謝 – RJB
當您發送通知消息並且您的應用程序位於後臺時,通知托盤中將顯示通知。你的應用程序的'onMessageReceived'不會被調用。這是預期的行爲。請參閱http://stackoverflow.com/questions/37711082/how-to-handle-notification-when-app-in-background-in-firebase –