2012-05-18 231 views
8

我想爲Android創建一個聊天應用程序,我想知道實現它的最佳方式。 我的第一個選擇是在手機和服務器之間使用套接字連接,以便服務器可以向手機發送任何新消息。Android聊天應用程序開發

第二種選擇是使用C2DM。

一個聊天應用程序,像怎麼了如何與套接字或使用C2DM實現?

有沒有更好的方法來創建比上述這樣的應用程序?

謝謝。

回答

3

asmackOpenFire是最簡單的方法。沒有必要重新發明輪子。

但是,如果您確實想要RTW,那麼在應用程序處於前臺時打開一個套接字,如果不是,則使用C2DM。 BTW C2DM與PITN合作,所以請考慮使用像Urban Airship這樣的服務。

+0

目前我正在學習更多關於android,所以我喜歡重新發明輪子:)。 我讀了關於XMPP,似乎被廣泛使用。 我想知道XMPP是如何工作的,從我讀的內容來看,XMPP是一個TCP/IP連接,所以我的問題是當SMS應用程序關閉Android應用程序時,它如何推送消息。 謝謝.. – Catalin

+0

XMPP客戶端維護到服務器的套接字連接,即使應用程序已關閉。在Android中,可以關閉應用程序,但不能關閉其所有進程。 –

7

C2DM(現在稱爲GCM)不適合構建聊天應用程序。當應用程序處於前臺時,當應用程序處於後臺時,與服務器創建套接字連接,使用GCM進行推送通知。你將不得不託管你自己的服務器,但我會建議不要重新發明輪子,並使用像Applozic(https://www.applozic.com)chat sdk這將給你一個小時內的WhatsApp和更多的功能。