资讯专栏INFORMATION COLUMN

开源轻量级IM框架MobileIMSDK v3.0发布!

Big_fat_cat / 1748人阅读

摘要:工程始于年月年月日发布了最新版,起初用作某产品的即时通讯底层实现,完全从零开发。现已公开并免费供开发者使用,希望对需要的人有所启发和帮助。

一、更新内容简介

本次更新为主版本更新,更新内容包含了简化了消息发送目标的方式、支持Web版与APP版互通、优化了Protocal协议结构等主要升级,详细更新内容见“版本更新说明”部分。

重要提示:因 MobileIMSDK v3 修改了核心层,已无法与 MobileIMSDK v2.x 兼容,请使用v2.x版的开发者勿贸然升级,如有疑问请发贴讨论!

二、MobileIMSDK简介

MobileIMSDK是一套专为移动端开发的开源即时通讯高可重用框架:

超轻量级、高度提炼,lib包50KB以内;

完全基于UDP协议实现;

客户端支持iOS、Android、标准Java平台;

可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。

MobileIMSDK工程始于2013年10月(2017年06月26日发布了最新版v3.0),起初用作某产品的即时通讯底层实现,完全从零开发。MobileIMSDK现已公开并免费供开发者使用,希望对需要的人有所启发和帮助。

您可能需要:查看更多关于MobileIMSDK的疑问及解答。

三、代码托管同步更新

OsChina:

代码托管: jackjiang/MobileIMSDK

项目资料: 点击查看更多资料

GitHub:

代码托管: JackJiang2011/MobileIMSDK

项目资料: 点击查看更多资料

四、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更新内容

【新增重要特性】

简化了消息发送目标的方式:由原user_id方式改为使用用户名的方式(即取消了每次登陆由服务端生成user_id的方式,从而极大地简化应用层通信的API调用和逻辑代码);

支持Web版与APP版互通(MobileIMSDK-Web版为另一独立工程,不包含在 MobileIMSDK v3 版之内);

优化了Protocal协议结构:增加了typeu用户自定义协议类型字段,从而大大简化了用户自义协议类型的使用;

【解决的Bug】

[android]解决了当MobileIMSDK运行于有线电缆网络模式下不能正确判断网络连接事件的问题;

Android、java修正了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中的网络监听线程。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/13742.html

相关文章

  • 八问WebSocket协议:为你快速解答WebSocket热门疑问

    一、引言 WebSocket是一种比较新的协议,它是伴随着html5规范而生的,虽然还比较年轻,但大多主流浏览器都已经支持。它使用方面、应用广泛,已经渗透到前后端开发的各种场景中。 对http一问一答中二式流程(就是从所周之的长轮询技要啦)的不满,催生了支持双向通信的WebSocket诞生。WebSocket是个不太干净协议。 本文将从8个常见的疑问入手,为还不了解WebSocket协议的开发者快...

    Zoom 评论0 收藏0
  • 开源库推荐文章

    摘要:也许是目前最好的动态权限请求库一个简洁方便的处理上动态权限的库常用三方框架的学习常用三方框架的学习值得每个人收藏的下拉刷新与加载更多大全最近在向大神男神寻找有关下拉刷新与加载更多的相关资料,然后就发给了我一个的链接,确实很齐全,很我先收藏了 FcPermissions:也许是目前最好的动态权限请求库 一个简洁方便的处理 Android M 上动态权限的库 Android 常用三方框架的...

    Simon 评论0 收藏0
  • Android开源项目

    摘要:几个不错的开源音视频播放器整理了一下上几个开源的音视频播放器项目,有兴趣的同学可以代码去研究学习。项目地址淘宝开源的一款的扩展是一个针对的扩展主要提供一整套布局方案和布局间的组件复用的问题。 PopsTabView--filter容器 PopsTabView是个filter容器,他可以自动,快速,构建不同筛选样式,自由组合成一组tab. 后续筛选会不断完善补充. 用户只需要,知道自己需...

    honhon 评论0 收藏0
  • 库&插件&框架&工具

    摘要:一些有用的一些有用的,包括转换小箭头三角形媒体查询等中文指南是当下最热门的前端资源模块化管理和打包工具。 nodejs 入门 nodejs 入门教程,大家可以在 github 上提交错误 2016 年最好用的表单验证库 SMValidator.js 前端表单验证工具分享 浅谈前端线上部署与运维 说到前端部署,可能大多数前端工程师在工作中都是使用的公司现成的部署系统,与SRE对接、一起完...

    Codeing_ls 评论0 收藏0
  • 库&插件&框架&工具

    摘要:一些有用的一些有用的,包括转换小箭头三角形媒体查询等中文指南是当下最热门的前端资源模块化管理和打包工具。 nodejs 入门 nodejs 入门教程,大家可以在 github 上提交错误 2016 年最好用的表单验证库 SMValidator.js 前端表单验证工具分享 浅谈前端线上部署与运维 说到前端部署,可能大多数前端工程师在工作中都是使用的公司现成的部署系统,与SRE对接、一起完...

    xiaowugui666 评论0 收藏0

发表评论

0条评论

Big_fat_cat

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<