2013-07-12 35 views
0

首先,我知道GCM服務,我也有問題。在Android設備上推送服務的實施

如果我想實施推送服務,這是否正確;服務器等連接,Android客戶端始終連接服務器並等待數據。所以服務器可以隨時發送數據。連接始終打開並保留活動消息。

關於GCM;

  • GCM是否使用這種邏輯?
  • GCM適用於所有Android設備嗎?我的意思是,如果使用Android操作系統的設備可以保證它也支持這項Google服務?
  • 如果GCM在Android上不是有保證的服務,我應該如何處理設備上沒有GCM支持的情況。或者這是一個微不足道的情況?

回答

1

GCM是否使用這種邏輯?

通常是的,但請記住,有更多的細節。

是否保證如果一個設備使用Android操作系統,它也支持這個Google服務?

不會。只有在設備上合法擁有Play商店和Google專有應用程序套件的其餘部分。它不會在Kindle Fire,OUYA或其他純粹從開源項目中使用Android的設備上。

我應該怎麼處理,有設備上

亞馬遜擁有GCM等效Kindle Fire的系列,IIRC沒有GCM支持的情況下。

除此之外,由於GCM不是有保證的送貨服務,因此即使是「普通」Android設備也需要一個回退計劃。

例如,假設您正在編寫一個應用程序向用戶顯示新聞標題。在沒有任何推送通知的情況下,您每四個小時輪詢一次新的頭條新聞,或者在用戶按下UI中的「刷新」按鈕時進行輪詢。藉助GCM,您的服務器可以在抵達時降低標題,這是您的應用可以提取的內容。這爲用戶提供了「普通」設備上更新的數據,但仍涵蓋了您錯過某些GCM消息或不支持GCM的設備的情況。

-2

除了CommonsWare提到的關於GCM的內容,您可能希望將MQTT看作另一個pub/sub機制;它適用於任何可以運行Java的設備。 Here是我試圖解釋它如何工作的鏈接。

該鏈接適用於局域網消息傳遞,但它也適用於互聯網。這是Facebook聊天應用程序使用的機制。在那個鏈接上,你會發現另一個鏈接到一個git,我展示了一個簡單的家庭自動化項目中使用的MQTT。如果您有任何問題,我可以嘗試回答。

相關問題