安卓聊天应用开发

10

我想要为安卓创建一个聊天应用,想知道最佳实现方式。

第一种选项是在手机和服务器之间使用socket连接,这样服务器就可以向手机发送任何新消息。

第二种选项是使用C2DM。

像Whatsapp这样的聊天应用是使用socket还是C2DM实现的?

除了以上两种方式,是否有更好的创建此类应用程序的方法?

谢谢。

2个回答

7
C2DM(现在称为GCM)不适合构建聊天应用程序。当应用程序在前台时,与服务器创建套接字连接,在后台使用GCM进行推送通知。您将需要托管自己的服务器,但我建议不要重复发明轮子,并使用类似Applozic(https://www.applozic.com)聊天sdk,它将在一小时内为您提供类似于WhatsApp的特性和更多功能。

5

asmackOpenFire是最简单的方法。不需要重新发明轮子。

但如果您确实想要RTW,那么在应用程序处于前台时打开套接字,并在其不在时使用C2DM。顺便说一句,C2DM很难处理,因此考虑使用像Urban Airship这样的服务。


目前我正在学习更多关于安卓的知识,所以我喜欢重新发明轮子 :).我了解了XMPP并且它似乎被广泛使用。 我想知道XMPP是如何工作的,从我所读的来看,XMPP是一个TCP/IP连接,那么我的问题是当安卓应用程序关闭时它如何像短信服务一样推送消息。谢谢。 - Catalin
XMPP客户端即使应用程序关闭也会维持与服务器的套接字连接。在Android中,可以关闭应用程序但不关闭其所有进程。 - Yusuf X

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接