一、更新内容简介
本次为次要版本更新(本次更新内容见文末“MobileIMSDK v6.0 更新内容”一节),强势降级,将同时反对 TCP、UDP、WebSocket 三种协定,精心封装之下,实现同一套 API、三种协定同时并存。
可能是市面上惟一同时反对 UDP+TCP+WebSocket 三种协定的同类开源 IM 框架。
二、MobileIMSDK 简介
MobileIMSDK 是一套专为挪动端开发的原创 IM 通信层框架:
- 历经 8 年、久经考验;
- 超轻量级、高度提炼,lib 包 50KB 以内;
- 精心封装,一套 API 同时反对 UDP、TCP、WebSocket 三种协定(可能是全网惟一开源的);
- 客户端反对 iOS、Android、规范 Java、H5、小程序(开发中..)、Uniapp(开发中..);
- 服务端基于 Netty,性能卓越、易于扩大;👈
- 可与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等;👈
- 可利用于跨设施、跨网络的聊天 APP、企业 OA、音讯推送等各种场景。
- MobileIMSDK 工程始于 2013 年 10 月,起初用作某产品的即时通讯底层实现,齐全从零开发,技术自主可控!
您可能须要:查看对于 MobileIMSDK 的具体介绍。
三、代码托管同步更新
OsChina.net:
- 代码托管:http://git.oschina.net/jackji…
- 我的项目材料:点击查看更多材料
GitHub.com:
- 代码托管:https://github.com/JackJiang2…
- 我的项目材料:点击查看更多材料
四、MobileIMSDK 设计指标
让开发者专一于应用逻辑的开发,底层简单的即时通讯算法交由 SDK 开发人员,从而解偶即时通讯利用开发的复杂性。
五、MobileIMSDK 框架组成
整套 MobileIMSDK 框架由以下 5 局部组成:
- Android 客户端 SDK:用于 Android 版即时通讯客户端,反对 Android 2.3 及以上,查看 API 文档;
- iOS 客户端 SDK:用于开发 iOS 版即时通讯客户端,反对 iOS 8.0 及以上,查看 API 文档;
- Java 客户端 SDK:用于开发跨平台的 PC 端即时通讯客户端,反对 Java 1.6 及以上,查看 API 文档;
- H5 客户端 SDK:材料整顿中,不日正式公布;
- 服务端 SDK:用于开发即时通讯服务端,反对 Java 1.7 及以上版本,查看 API 文档。
六、MobileIMSDK v6.0 更新内容
【重要阐明】:
MobileIMSDK v6 为全新版本,新增了对 WebSocket 协定的优雅反对、多端互踢反对等!查看详情
【新增重要个性】:
服务端新增 WebSocket 协定反对,一套 API 优雅反对 TCP、UDP、WebSocket 3 种协定;
反对多端互踢性能(可应答简单的挪动端网络变动逻辑对多端互踢算法的影响);
【解决的 Bug】:
- [Andriod]解决了断线后,fireDisconnectedToServer()办法中的一处空指针隐患;
- [iOS] 修复了 TCP 版代码中,调用 [ClientCoreSDK releaseCore] 办法会触发主动登陆逻辑的 bug;
- [服务端] 解决了 UDP 协定下,重连状况下的被踢者已被服务端登记会话后,客户端才发回登陆响应 ACK 应答,导致服务端谬误地向未被踢者收回已登陆者反复登陆响应的问题;
【其它优化和晋升】:
- [Andriod]废除了 SDK、Demo 代码中的所有 AsyncTask 的应用;
- [Andriod]将所有可应用 Lambda 表达式的代码全副用 Lambda 进行了简化。
- [iOS] 解决了 XCode12 上编译 SDK 的.a 包,打包成瘦子.a 时报“have the same architectures (arm64) and can’t be in the same fat output file”的问题;
- [iOS] Demo 中所有应用过期的 UIAlertView 改为 UIAlertController 实现;
- [iOS] 解决了 iOS 端 SDK 工程中两处因类名重构导致的在 XCode12.5.1 上编译出错。
- [服务端] 将服务端 Demo 中的 Log4j 日志框架降级为最新的 Log4j2;
- [服务端] 服务端可管制是否为每条音讯生成发送工夫戳(可辅助用于客户端的音讯排序逻辑等)。
七、相干链接
MobileIMSDK 的具体介绍:点击查看
MobileIMSDK 的下载地址:点击下载