2012-05-18 196 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和更多的功能。