GCM:如果客戶端設備在有限時間內沒有網路連線?

GCM:如果客戶端設備在有限時間內沒有網路連線?

我的問題是,如果客戶端設備在有限的時間內沒有網路連接,那麼 GCM 推播通知請求是否會新增到佇列或其他內容中?如果是這樣,請求被丟棄需要多長時間?

答案1

所以,在官方指導如何與 GCM 合作 說:

設定訊息的生命週期

GCM 通常在訊息發送後立即傳送訊息。然而,這並不總是可能的。例如,如果平台是 Android,則裝置可能會關閉、離線或以其他方式不可用。或者,發送者本身可能會請求在設備啟動之前不要發送訊息,方法是使用空閒時延遲旗幟。最後,GCM 可能會故意延遲訊息,以防止應用程式消耗過多資源並對電池壽命產生負面影響。

發生這種情況時,GCM 將儲存訊息並在可行時盡快傳送。雖然這在大多數情況下都很好,但對於某些應用程式來說,遲到的消息可能永遠不會被傳遞。例如,如果訊息是來電或視訊聊天通知,則它僅在通話終止之前的一小段時間內有意義。或者,如果該訊息是活動邀請,則在活動結束後收到該訊息將毫無用處。

您可以使用生存時間發送請求中的參數指定訊息的最大生命週期。此參數的值必須是從 0 到 2,419,200 秒的持續時間,它對應於 GCM 將儲存並嘗試傳遞訊息的最長時間。不包含此欄位的請求預設最長期限為 4 週。

相關內容