一、根本介绍
MobileIMSDK-Uniapp端是一套基于Uniapp跨端框架的即时通讯库:
1)超轻量级、无任何第3方库依赖(开箱即用);
2)纯JS编写、ES6语法、高度提炼,简略易用;
3)基于Uniapp规范WebSocket API,简洁优雅;
4)实践上可运行于任何反对Uniapp跨端框架的平台上;
5)能与 MobileIMSDK(Github托管链接) 的各种客户端完满互通;
6)可利用于基于Uniapp的跨平台App或Web的音讯推送、客服聊天、企业OA、IM等场景。
具体开发材料:
① MobileIMSDK-Uniapp端具体介绍
② MobileIMSDK-Uniapp端开发手册
③ MobileIMSDK-开源框架的详细资料 (Github托管链接)
二、与MobileIMSDK的关系
MobileIMSDK-Uniapp端 是基于Uniapp规范 WebSocket API的 MobileIMSDK配套客户端库。
以下是MobileIMSDK的最新通信架构图:
MobileIMSDK是一套专为挪动端开发的原创开源IM通信层框架:
1)历经8年、久经考验;
2)超轻量级、高度提炼,lib包50KB以内;
3)精心封装,一套API同时反对UDP、TCP、WebSocket三种协定(可能是全网惟一开源的);
4)客户端反对iOS、Android、规范Java、H5(暂未开源)、微信小程序(暂未开源)、Uniapp
(暂未开源);
5)服务端基于Netty,性能卓越、易于扩大;
6)可与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等;
7)可利用于跨设施、跨网络的聊天APP、企业OA、音讯推送等各种场景。
PS: MobileIMSDK始终在继续开发和降级中,本Uniapp客户端是MobileIMSDK工程的最新成绩。
三、设计指标
间接应用Uniapp的WebSocket API开撸,有以下问题和劣势:
1)性能无限: 没有心跳保活、断线重连、音讯送达保障(重传和去重)等即时通讯要害算法和逻辑;
2)API简陋: 在如此无限的API接口下,能逻辑清晰且强壮地实现并组合心跳保活、断线重连、音讯送达保障等算法,须要相当高的技术掌控力;
3)逻辑耦合: 教训欠缺的开发人员,会将WebSocket通信与前端UI界面代码混在一起,使得UI界面的编写、保护、改版都十分艰难。
针对以上问题: MobileIMSDK-Uniapp端库将让开发者专一于UI应用层的开发,网络通信层的业余代码交由SDK开发人员,从而解偶UI前端和通信层的逻辑耦合性,大大降低技术复杂度和利用门槛。
MobileIMSDK-Uniapp端库的设计指标是为您的开发带来以下便当:
1)界面与通信解偶: UI界面与网络通信代码解耦,UI界面的重构、保护、改版都非常容易和优雅;
2)轻量级和兼容性: 受害于保持应用Uniapp的规范WebSocket API,简洁轻量,无需任何额定库依赖;
3)外围内聚和收敛: 得益于长期的提炼和教训积攒,SDK核心层高度封装,开发者无需了解简单算法即可简略上手。
4)纯JS轻量级实现: 纯JS编写、ES6语法,无重量级框架和库依赖(更无Native代码),可干净利落地对接各种既有零碎;
5)跨平台运行能力: 受害于Uniapp框架的跨端个性,实践上本SDK可运行于任何反对Uniapp的平台上。
四、技术亮点
1)轻量易使用: 超轻量级——纯JS编写且无任何第3方库依赖,高度提炼——简略易用;
2)代码现代感: 尽可能优先应用ES6语法,摒弃新式JS语法的年代感;
3)跨端反对好: 基于Uniapp的规范WebSocket API(无Native代码依赖),实践上可很好地运行于任何反对Uniapp的平台上;
4)断网恢复能力: 领有网络情况自动检测、断网主动治愈的能力;
5)送达保障机制: 欠缺的QoS音讯送达保障机制(主动重传、音讯去重、状态反馈等),不漏过每一条音讯;
6)通信协议封装: 实现了一个对下层通明的即时通讯通信协议模型;
7)身份认证机制: 实现了简略正当的身份认证机制;
8)欠缺的log信息: 在开发调试阶段,确保每一个算法关键步骤都有日志输入,让您的运行调试更为便当;
9)界面代码解耦: 实现了UI界面代码与SDK网络通信代码解偶,避免界面代码跟IM外围代码混在一起,不利于继续降级、重用和保护;
10)多端协定兼容: 实现了与MobileIMSDK各种客户端齐全兼容的协定模型。
五、文件组成SDK代码文件概览:
SDK代码文件用处阐明:
六、Demo运行成果和阐明
七、跨平台运行成果演示
1)Demo在内置浏览器中的运行成果:
2)Demo在电脑浏览器中的运行成果(以Chrome为例):
3)Demo在Android真机上的运行成果:
4)Demo在iOS模拟器上的运行成果:
5)Demo在iOS真机上的运行成果:
6)Demo在微信小程序上的运行成果:
7)Demo在支付宝小程序上的运行成果:
(其它更多平台的运行成果就不一一列举了,因为都要装置各自的开发工具,硬盘空间吃紧 。。。)
八、详细资料
① MobileIMSDK-Uniapp端的具体介绍:点此查看
② MobileIMSDK-Uniapp端的开发手册(网页版):点此查看
③ MobileIMSDK-Uniapp端的开发手册(精编PDF版):点此查看 (* 举荐)
④ MobileIMSDK-开源框架的具体介绍:https://gitee.com/jackjiang/MobileIMSDK (Github托管链接)