2012-08-29 327 views
3

我的問題陳述如下: -來自服務器的Android通知

我開發了基於客戶端 - 服務器模型的應用程序。現在就通知客戶的情況下可能有兩種情況: -

  1. 如果客戶端連接到服務器,然後通過連接的套接字發送數據發送通知。

  2. 如果客戶端沒有連接,那麼我使用Android的android.telephony.SmsMessage向客戶端發送消息,並在客戶端發送廣播接收器來接收此消息。

現在我想知道是否有其他方式使用Internet連接(數據連接)發送通知。我有一個解決方案,創建一個服務,連接到服務器,每當用戶打開數據連接和偵聽通知,但我認爲它會吃掉額外的資源。

我想知道Facebook或WhatsApp的如何發送通知給他們的用戶

回答

2

當我第一次開始爲機器人編程。我也想做Client-Server模型,但它是一個在android中實現的非常複雜的模型。還有一種叫做GCM(Google Cloud Messagning)的服務,這個服務被所有這些巨頭和我(小巨人)所使用。這裏是link。使用GCM,您不需要始終連接到客戶端。只要客戶端可以訪問互聯網,您就可以發送消息給客戶端,客戶端就會收到消息。

+0

嗨Dusean感謝您的鏈接 到目前爲止,我實現了這個模型相當不錯,因爲我開發的服務器在C++中處理客戶端非常好。我想爲我的客戶(android)提供通知功能,如Facebook和whatsApp。 – birubisht

+0

然後你想按照這裏建議的使用GCM。使用客戶端服務器進行通知存在問題,電池耗盡和內存耗盡。 GCM是WhatsApp和Facebook使用的。 – Kaediil