回答

2

發生這種情況有多種原因。您可能需要確保在本SO thread表示您的GCM設置是否正確配置:

  1. 確保你已經設置你從谷歌正確接收的發送者ID。
  2. 確保您的設備已正確註冊Google的GCM服務。
  3. 確保您發送推送到您從Google收到的正確註冊ID。並且您沒有收到來自Google GCM服務的錯誤消息。
  4. 你設置了delay_while_idle = 1嗎?這意味着如果消息處於空閒狀態(關閉,離線,鎖定屏幕等),則該消息不會到達該設備。
  5. 如果您希望您的wakelock權限有所作爲,請將其更改爲delay_while_idle = 0。請閱讀更多。
  6. 有些時候推送到達需要時間(但從來沒有太多時間,那麼就有問題)。檢查您發送的 推送的「生存時間」是什麼。

另外值得一檢查是this blog它試圖解決同樣的問題。下面是概括原因:

  1. 通知可以由用戶在操作系統級別被封鎖
  2. 設備特定問題的問題
  3. 用戶沒有連接到GCM由於網絡
  4. 生存時間通知之前到期輸送
  5. 從GCM
  6. 差距標記令牌作爲在活性