以前做过类似的项目,对同类产品也做过研究。
微信是腾讯采用自己开发的协议做的,其他市面上很多产品大都是采用XMPP协议,包括米聊在内之前也是这样子。
采用XMPP协议,服务端可以采用OpenFire搭建,客户端有个开源的叫asmack的东西,google下可以找到。
如果人手少,时间紧,建议采用XMPP,很快就可以出来东西。如果各方面都充足,还是直接采用tcp来做吧,客户端与服务端维持一个tcp长连接,通过定时发心跳包来保持,这个就需要有服务端高手,要考虑到高并发性等等。这样做的方式就比较灵活了,数据都是通过tcp来发送、接受,可以自己制定各种协议。如果是个人开发者,给个网址你去看看www.parse.com,提供免费的push服务,完全也可以实现类似即时通信的要求,缺点是服务器是别人的,可能有数据量限制。
微信是腾讯采用自己开发的协议做的,其他市面上很多产品大都是采用XMPP协议,包括米聊在内之前也是这样子。
采用XMPP协议,服务端可以采用OpenFire搭建,客户端有个开源的叫asmack的东西,google下可以找到。
如果人手少,时间紧,建议采用XMPP,很快就可以出来东西。如果各方面都充足,还是直接采用tcp来做吧,客户端与服务端维持一个tcp长连接,通过定时发心跳包来保持,这个就需要有服务端高手,要考虑到高并发性等等。这样做的方式就比较灵活了,数据都是通过tcp来发送、接受,可以自己制定各种协议。如果是个人开发者,给个网址你去看看www.parse.com,提供免费的push服务,完全也可以实现类似即时通信的要求,缺点是服务器是别人的,可能有数据量限制。
解决方案 »
- android中webview下的javascript使用问题
- 脸部解锁显示问题…………
- 环境问题,Ubuntu上模拟器不能关闭,而且不能上网
- Android多媒体开发
- 关于TextView的应用
- android 下就不能直接写 mp4 或 3gp 文件?
- Android3.0以后2D硬件加速走的是OpenGL?
- android 源码4.4.2 Phone应用 通话界面InCallActivity如何获取当前call的状态
- UTFDataFormatException
- XMPP Error connecting (Network is unreachable)
- android 错误
- Android 圆形ImageView 怎样解决边缘锯齿的问题
如今做个这个东西也有框架了啊
[/Q
恩 我也是在网上看到的..