Android聊天服务器

Ahm*_*med 2 android

我需要为基于Android的客户端创建一个聊天/通信服务器.

Android聊天客户端将通过3g或wifi网络连接到互联网,我需要遵循简单的功能

  • 注册一个新用户
  • 从一个客户端向另一个客户端发送消
  • 将同时连接大约500个客户端

来自桌面应用程序开发,我只有基于套接字的解决方案,并且服务器应该是基于Java的应用程序

所以问题是:基于套接字的方法是可行的还是我应该使用其他一些通信协议.

Vin*_*noy 6

虽然使用TCP套接字可以完成这项工作,但这并不是一个好主意,因为您必须处理大量内容,例如消息格式化,流式传输等.使用已有的消息传递协议和库之一.

我建议调查XMPP,它有一套用于在设备之间实现消息传递的开放标准.优点是有大量库可用于实现XMPP客户端和服务器.

要在Android设备上实现XMPP客户端,您可以使用名为Smack的库.它实际上是一个基于Java的库.我使用Asmack实现了一个Facebook XMPP聊天客户端,Asmack是Smack的Android端口.Smack文档也适用于Asmack.但是,Asmack已经两年没有更新并且有一些问题,我一直在考虑将我的客户端更改为Smack,看看新版本是否与Android有关.

至于实现XMPP服务器,您可以查看由制作Smack的同一个人制作的Openfire.我还没有使用过,但是项目页面上有关于设置Openfire的大量文档.从我使用的Smack库的质量来看,我敢说Openfire可以很好地工作.

祝好运!