一、MobileIMSDK简介
MobileIMSDK是一套专为移动端开发的原创即时通讯高可重用框架: - 超轻量级、高度提炼,lib包50KB以内;
- 完全基于UDP协议实现;
- 客户端支持iOS、Android、标准Java平台;
- 可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。
MobileIMSDK工程始于2013年10月(2017年06月26日发布了最新版v3.0),起初用作某产品的即时通讯底层实现,完全从零开发。 MobileIMSDK现已公开并免费供开发者使用,希望对需要的人有所启发和帮助。
👉 您可能需要:查看更多关于MobileIMSDK的疑问及解答。 二、代码托管同步更新GitHub.com OsChina.net 三、MobileIMSDK设计目标让开发者专注于应用逻辑的开发,底层复杂的即时通讯算法交由SDK开发人员 ,从而解偶即时通讯应用开发的复杂性 。 四、MobileIMSDK框架组成整套MobileIMSDK框架由以下4部分组成: - Android客户端SDK:用于Android版即时通讯客户端,支持Android 2.3及以上,查看API文档;
- iOS客户端SDK:用于开发iOS版即时通讯客户端,支持iOS 6.0及以上,查看API文档;
- Java客户端SDK:用于开发跨平台的PC端即时通讯客户端,支持Java 1.5及以上,查看API文档;
- 服务端SDK:用于开发即时通讯服和端,支持Java 1.5及以上版本,查看API文档。
👉 另:MobileIMSDK-Web版为独立工程,如有需要请联系作者。 五、MobileIMSDK v3.0更新内容【重要说明】因 MobileIMSDK v3 修改了核心层,已无法与 MobileIMSDK v2.x 兼容,请使用v2.x版的开发者勿贸然升级,如有疑问请前往 http://www.52im.net 发贴讨论!
【新增重要特性】- 简化了消息发送目标的方式:由原user_id方式改为使用用户名的方式(即取消了每次登陆由服务端生成user_id的方式,从而极大地简化应用层通信的API调用和逻辑代码);
- 支持Web版与APP版互通(MobileIMSDK-Web版为另一独立工程,不包含在 MobileIMSDK v3 版之内);
- 优化了Protocal协议结构:增加了typeu用户自定义协议类型字段,从而大大简化了用户自义协议类型的使用;
【解决的Bug】- [android]解决了当MobileIMSDK运行于有线电缆网络模式下不能正确判断网络连接事件的问题;
- [Android、java][bug]修正了Demo中首次登陆时使用了错误的ip后再改成正确的ip时却不能登陆的问题;
- [Android、java、iOS]解决了客户端(Android、iOS、Java)登陆时当服务端返回的认证结果code不为0时,客户端会进入反复登陆的死循环当中;
【其它优化和提升】- [服务端]服务端定时器都由javax.swing.Timer改为java.util.Timer,提高可靠性;
- [服务端]重构了服务端代码,简化算法的理解、增强代码可读性;
- [服务端]升级了相关lib包:MINA至最新版2.0.13、gson2.7等;
- [android]SDK代码依然顽强地支持低至Andriod 2.3.3及以上版本(即Android API Level 10+);
- [iOS] 优化了demo的ui界面在ios10和xcode8下的兼容性问题。
- [iOS] 优化了“MessageQoSEvent中的messagesLost:(NSArray*)lostMessages”为“messagesLost:(NSMutableArray*)lostMessages”;
- [Android、java、iOS]优化了在掉线情况下的消息发送能尽快作为“未实时送达”包反馈到UI层从而提升体验;
- [服务端]因升级MINA2.0.13的需要,服务端SDK运行所需的Java版本已提升至1.7及以上版本;
- [Java、Android]解决了ClientCoreSDK.release()不能正常停掉LocalUDPDataReciever中的网络监听线程。
|