2015-11-22 25 views
1

好的,我們都知道GCM的功能,但我的問題是:GCM可以可靠地處理聊天應用程序嗎?我的意思是它可以處理向數百人發送消息嗎?如果沒有,那麼最好的方法是什麼?使用GCM的Android聊天應用程序

我一直在閱讀很多關於聊天應用的信息,我發現我們必須使用XMPP,但是我能找到的所有API都是不與MY服務器集成的,比如Parse(我們必須註冊並簽名與他們的後端這是不是很方便)

謝謝大家

編輯: 怎麼樣谷歌雲通訊GCM CCS與XMPP

+0

我會使用[Firebase。](https://www.firebase.com/) – mbmc

回答

1

GCM,在我看來,與它的經驗,不夠快。谷歌從未聲稱它會是。聊天服務器/服務需要保證在一定時間內傳遞消息,至少有99.9%的時間。即使您不希望聊天的交付報告,許多聊天應用程序仍然無法提供,GCM本身對於聊天應用程序本身會很慢。您最好只使用XMPP服務器

+0

謝謝! GCM CCS和XMPP怎麼樣 –

+0

從來沒有用過它,但是閱讀API文檔,我相信它應該可以工作!沒有理由不這樣做 –

4

對於聊天應用程序,僅GCM是不夠的,因爲它可能會延遲或錯過某個時間。您可以使用MQTT(與手機平臺的XMPP相比具有多重優勢)以及GCM。方法應該是:

1)如果用戶處於前臺,則使用MQTT持久性連接。這將會更快,並且會實時發送傳送報告並閱讀聊天記錄。未連接時,可以使用GCM喚醒MQTT連接。

2)當用戶未主動和後臺使用聊天時關閉GCM上的中繼(關閉MQTT連接)。這將節省電池壽命以及網絡使用。

對於示例代碼,你可以通過我們的Applozic開源聊天sdk。