基于apache mina 移动应用即时通讯(IM)实例
CIM SDK版 开源发布了,大家开去看看吧http://www.eoeandroid.com/forum.php?mod=viewthread&tid=313426
这套IM 使用了 apache mina ,主要功能为 服务端和客户端,客户端 到客户端的即时通信,可以支持包括文字 图片,语音等任何消息形式
服务端使用的 struts2+spring3和hibernate3.6 +apache mina
android端 也使用的apache mina
前言:
现在市面上有很多 xmpp协议的即时通讯方案,openfire androidpn,等等。它们都是使用了apache mina开发,但是这些东西基本都需要二次改造开发。而且改动还很大,我也看过这些东西的源码,发现代码结构不太理想,耦合的情况太多,实在不好扩展。所 谓XMPP 协议。只不过是别人使用mina 自定义了一个消息编码解码协议。通俗的讲就是,xml形式消息的编码与解码,我们完全没有必要在国外这套不成熟的openfire 与xmpp 上耗费过多的精力去研究,我们完全可以通过apache mina 自定义自己的通讯协议,并可以为它使用自己的名字。我们不要盲目崇拜国外的有些东西,自己掌握原理,才是最重要的,各位切记~
这套 IM系统结构还是非常清晰合理的,非常容易扩展和改造,下面是android版本 的 demo,仿造QQ2013界面这个demo的目的是只是一个演示 ,可以参照它的代码,使用这套系统开发自己的东西,核心价值是一套高灵活性,相对标准化的 即时通讯解决方案,即时聊天只是它的一种运用途径!
更新记录
2013.11.10:已经更 实现了注册账号,添加申请好友,申请进入群组,创建群组,改进了各项功能!
----------------------------------------------
2013.12.02:完成了 语音和图片消息功能
-----------------------------------------------
2013.12.20 :
1.新增了文件消息,文件发送与接收
2.修改了已知bug,提升稳定性
3.优化了界面,完善细节
4.重构了大量代码,结构更加简洁
----------------------------------------------
mchat.apk (3.08 MB, 下载次数: 0) APK 下载
APK百度网盘地址:http://pan.baidu.com/s/1i3t71ad
可以用的账号:密码
xiaomao: xiaomao
xiaogou:xiaogou
xiaoma:xiaoma
xiaoxiong:xiaoxiong
手机登陆后,打开http://124.237.121.75:8989/ichat/ 即可测试消息发送
如果需要请联系 QQ 3979434