想象一下,用戶安裝了Facebook Android應用程序,但未打開。即時消息如何發送到Android應用程序?
當用戶收到來自朋友的聊天消息時,會出現在手機上。這是利用Google Cloud Messaging推送通知來傳遞聊天消息嗎?這是發送消息給用戶的最佳實踐方法嗎?或者,Android應用程序(Facebook/WhatsApp /微信)需要打開一個持久的Web套接字連接嗎?
想象一下,用戶安裝了Facebook Android應用程序,但未打開。即時消息如何發送到Android應用程序?
當用戶收到來自朋友的聊天消息時,會出現在手機上。這是利用Google Cloud Messaging推送通知來傳遞聊天消息嗎?這是發送消息給用戶的最佳實踐方法嗎?或者,Android應用程序(Facebook/WhatsApp /微信)需要打開一個持久的Web套接字連接嗎?
我們可以使用推送通知來發送消息。 最好的方法是使用XMPP協議。 您可以在下面找到示例 Simple messaging application using XMPP
謝謝!這是否意味着即使android應用程序不活動,它將需要保持持續連接打開?這會消耗電池壽命嗎? – codeshark
GCM爲您維護XMPP連接,因此在Android上您不必擔心維護連接或其對電池壽命的影響。 https://developers.google.com/cloud-messaging/ccs –
謝謝!這是否意味着即使android應用程序不活動,它將需要保持持續連接打開?這會消耗電池壽命嗎? – codeshark
@ android-user對於你的第一個問題,是的。通常你通過服務來做到這一點。對於第二個問題,一個空閒的TCP連接不會使用任何帶寬或CPU發送「keepalive」數據包。因此,在閒置連接中,電池壽命使用將由「保持活動」數據包之間的時間決定。 – asadmshah