登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
轻量养虾,开箱即用!低 Token + 稳定算力,Gitee & 模力方舟联合出品的 PocketClaw 正式开售!点击了解详情
代码拉取完成,页面将自动刷新
开源项目
>
应用工具
>
IM即时通讯/聊天
&&
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
472
Star
2.7K
Fork
898
Jack Jiang
/
MobileIMSDK
代码
Issues
12
Pull Requests
1
Wiki
统计
流水线
服务
JavaDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
开发画像分析
我知道了,不再自动展开
更新失败,请稍后重试!
移除标识
内容风险标识
本任务被
标识为内容中包含有代码安全 Bug 、隐私泄露等敏感信息,仓库外成员不可访问
【开发动态】MobileIMSDK最新鸿蒙NEXT端库已发布!
置顶
待办的
#IBCI00
Jack Jiang
拥有者
创建于
2024-12-19 20:15
# 一、基本介绍  **MobileIMSDK-鸿蒙端是一套基于鸿蒙Next(纯血鸿蒙)系统的IM即时通讯客户端库:** - 1)超轻量级(编译后库文件仅50KB)、无任何第3方库依赖(开箱即用); - 2)纯ArkTS编写、无Native代码、高度提炼、简单易用; - 3)基于鸿蒙Next标准WebSocket API,简洁优雅; - 4)可运行于任何支持鸿蒙Next的平台; - 5)能与 [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)的各种客户端完美互通; - 6)可应用于鸿蒙Next中的消息推送、客服聊天、企业OA、IM等场景。 **详细开发资料:** **①** [MobileIMSDK-鸿蒙NEXT端详细介绍](http://www.52im.net/thread-4766-1-1.html) :point_left: **②** [MobileIMSDK-鸿蒙NEXT端开发手册](http://www.52im.net/thread-4767-1-1.html) :point_left: # 二、与MobileIMSDK的关系 **MobileIMSDK-鸿蒙Next端** 是基于鸿蒙标准 WebSocket [API](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5)的 [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)配套客户端库。 **以下是MobileIMSDK的最新通信架构图:**  **[MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)是一套专为移动端开发的原创开源IM通信层框架:** - 1)历经10年、久经考验; - 2)超轻量级、高度提炼,lib包50KB以内; - 3)精心封装,一套API同时支持UDP、TCP、WebSocket三种协议(可能是全网唯一开源的); - 4)客户端支持iOS、Android、标准Java、H5([暂未开源](http://www.52im.net/thread-3682-1-1.html))、微信小程序([暂未开源](http://www.52im.net/thread-4169-1-1.html))、Uniapp:new:([暂未开源](http://www.52im.net/thread-4225-1-1.html))、鸿蒙Next([Demo工程源码](https://gitee.com/jackjiang/MobileIMSDK/tree/master/demo_src/WebSocket/MobileIMSDK4HarmonyDemo)、[精编注释版SDK](http://www.52im.net/thread-4766-1-1.html)); - 5)服务端基于Netty,性能卓越、易于扩展; - 6)可与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等; - 7)可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。 **PS:** [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)一直在持续开发和升级中,本鸿蒙Next客户端是MobileIMSDK工程的最新成果。 # 三、设计目标 **直接使用鸿蒙Next的[WebSocket](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5) API开撸,有以下问题和劣势:** - _1)_**功能有限:** 没有心跳保活、断线重连、消息送达保证(重传和去重)等即时通讯关键算法和逻辑; - _2)_**API简陋:** 在如此有限的[API接口](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5)下,能逻辑清晰且健壮地实现并组合心跳保活、断线重连、消息送达保证等算法,需要相当高的技术掌控力; - _3)_**逻辑耦合:** 经验欠缺的开发人员,会将WebSocket通信与前端UI界面代码混在一起,使得UI界面的编写、维护、改版都非常困难。 **针对以上问题:** MobileIMSDK-鸿蒙Next端库将让开发者专注于UI应用层的开发,网络通信层的专业代码交由SDK开发人员,从而解偶UI前端和通信层的逻辑耦合性,大大降低技术复杂度和应用门槛。 **MobileIMSDK-鸿蒙Next端库的设计目标是为您的开发带来以下便利:** - _1)_**界面与通信解偶:** UI界面与网络通信代码解耦,UI界面的重构、维护、改版都非常容易和优雅; - _2)_**轻量级和兼容性:** 受益于坚持使用鸿蒙Next的标准WebSocket API,简洁轻量,无需任何额外库依赖; - _3)_**核心内聚和收敛:** 得益于长期的提炼和经验积累,SDK核心层高度封装,开发者无需理解复杂算法即可简单上手。 - _4)_**纯 ArkTS 实现:** 纯ArkTS编写,无重量级框架和库依赖(更无Native代码),可干净利落地对接各种既有系统; - _5)_**跨平台运行能力:** 受益于鸿蒙系统的跨端特性,理论上本SDK可运行于任何支持鸿蒙Next的平台上。 # 四、技术亮点 - _1)_**超级轻量纯净:** 超轻量级——纯ArkTS编写且无任何第3方库依赖,编译后库文件仅50KB; - _2)_**高内聚易使用:** 高度提炼——简单易用,所有核心类皆设计为单例——到手即用、高度容错; - _3)_**跨端支持好:** 基于鸿蒙Next的标准WebSocket API(无Native代码依赖),理论上可很好地运行于任何支持最新鸿蒙的平台上; - _4)_**断网恢复能力:** 拥有网络状况自动检测、断网自动治愈的能力; - _5)_**送达保证机制:** 完善的QoS消息送达保证机制(自动重传、消息去重、状态反馈等),不漏过每一条消息; - _6)_**通信协议封装:** 实现了一个对上层透明的即时通讯通信协议模型; - _7)_**身份认证机制:** 实现了简单合理的身份认证机制; - _8)_**完善的log信息:** 在开发调试阶段,确保每一个算法关键步骤都有日志输出,让您的运行调试更为便利; - _9)_**界面代码解耦:** 实现了UI界面代码与SDK网络通信代码解偶,防止界面代码跟IM核心代码混在一起,不利于持续升级、重用和维护; - _10)_**多端协议兼容:** 实现了与[MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)各种客户端完全兼容的协议模型。 # 七、文件组成 **SDK代码文件概览:**  **SDK代码文件用途说明:**  # 八、Demo功能说明  # 九、实际运行效果 **1)Demo 的登陆界面运行截图:**  **2)Demo 的主界面运行截图:**  **3)Demo 运行的同时,可以查看详细的 log 输出(方便调试):**  # 十、详细资料 **① MobileIMSDK-鸿蒙Next端的详细介绍:**[点此查看](http://www.52im.net/thread-4766-1-1.html) :point_left: **② MobileIMSDK-鸿蒙Next端的开发手册:**[点此查看](http://www.52im.net/thread-4767-1-1.html) :point_left: **③ MobileIMSDK-开源框架的详细介绍:**[https://gitee.com/jackjiang/MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK) :point_left:
# 一、基本介绍  **MobileIMSDK-鸿蒙端是一套基于鸿蒙Next(纯血鸿蒙)系统的IM即时通讯客户端库:** - 1)超轻量级(编译后库文件仅50KB)、无任何第3方库依赖(开箱即用); - 2)纯ArkTS编写、无Native代码、高度提炼、简单易用; - 3)基于鸿蒙Next标准WebSocket API,简洁优雅; - 4)可运行于任何支持鸿蒙Next的平台; - 5)能与 [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)的各种客户端完美互通; - 6)可应用于鸿蒙Next中的消息推送、客服聊天、企业OA、IM等场景。 **详细开发资料:** **①** [MobileIMSDK-鸿蒙NEXT端详细介绍](http://www.52im.net/thread-4766-1-1.html) :point_left: **②** [MobileIMSDK-鸿蒙NEXT端开发手册](http://www.52im.net/thread-4767-1-1.html) :point_left: # 二、与MobileIMSDK的关系 **MobileIMSDK-鸿蒙Next端** 是基于鸿蒙标准 WebSocket [API](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5)的 [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)配套客户端库。 **以下是MobileIMSDK的最新通信架构图:**  **[MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)是一套专为移动端开发的原创开源IM通信层框架:** - 1)历经10年、久经考验; - 2)超轻量级、高度提炼,lib包50KB以内; - 3)精心封装,一套API同时支持UDP、TCP、WebSocket三种协议(可能是全网唯一开源的); - 4)客户端支持iOS、Android、标准Java、H5([暂未开源](http://www.52im.net/thread-3682-1-1.html))、微信小程序([暂未开源](http://www.52im.net/thread-4169-1-1.html))、Uniapp:new:([暂未开源](http://www.52im.net/thread-4225-1-1.html))、鸿蒙Next([Demo工程源码](https://gitee.com/jackjiang/MobileIMSDK/tree/master/demo_src/WebSocket/MobileIMSDK4HarmonyDemo)、[精编注释版SDK](http://www.52im.net/thread-4766-1-1.html)); - 5)服务端基于Netty,性能卓越、易于扩展; - 6)可与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等; - 7)可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。 **PS:** [MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)一直在持续开发和升级中,本鸿蒙Next客户端是MobileIMSDK工程的最新成果。 # 三、设计目标 **直接使用鸿蒙Next的[WebSocket](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5) API开撸,有以下问题和劣势:** - _1)_**功能有限:** 没有心跳保活、断线重连、消息送达保证(重传和去重)等即时通讯关键算法和逻辑; - _2)_**API简陋:** 在如此有限的[API接口](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-websocket-V5)下,能逻辑清晰且健壮地实现并组合心跳保活、断线重连、消息送达保证等算法,需要相当高的技术掌控力; - _3)_**逻辑耦合:** 经验欠缺的开发人员,会将WebSocket通信与前端UI界面代码混在一起,使得UI界面的编写、维护、改版都非常困难。 **针对以上问题:** MobileIMSDK-鸿蒙Next端库将让开发者专注于UI应用层的开发,网络通信层的专业代码交由SDK开发人员,从而解偶UI前端和通信层的逻辑耦合性,大大降低技术复杂度和应用门槛。 **MobileIMSDK-鸿蒙Next端库的设计目标是为您的开发带来以下便利:** - _1)_**界面与通信解偶:** UI界面与网络通信代码解耦,UI界面的重构、维护、改版都非常容易和优雅; - _2)_**轻量级和兼容性:** 受益于坚持使用鸿蒙Next的标准WebSocket API,简洁轻量,无需任何额外库依赖; - _3)_**核心内聚和收敛:** 得益于长期的提炼和经验积累,SDK核心层高度封装,开发者无需理解复杂算法即可简单上手。 - _4)_**纯 ArkTS 实现:** 纯ArkTS编写,无重量级框架和库依赖(更无Native代码),可干净利落地对接各种既有系统; - _5)_**跨平台运行能力:** 受益于鸿蒙系统的跨端特性,理论上本SDK可运行于任何支持鸿蒙Next的平台上。 # 四、技术亮点 - _1)_**超级轻量纯净:** 超轻量级——纯ArkTS编写且无任何第3方库依赖,编译后库文件仅50KB; - _2)_**高内聚易使用:** 高度提炼——简单易用,所有核心类皆设计为单例——到手即用、高度容错; - _3)_**跨端支持好:** 基于鸿蒙Next的标准WebSocket API(无Native代码依赖),理论上可很好地运行于任何支持最新鸿蒙的平台上; - _4)_**断网恢复能力:** 拥有网络状况自动检测、断网自动治愈的能力; - _5)_**送达保证机制:** 完善的QoS消息送达保证机制(自动重传、消息去重、状态反馈等),不漏过每一条消息; - _6)_**通信协议封装:** 实现了一个对上层透明的即时通讯通信协议模型; - _7)_**身份认证机制:** 实现了简单合理的身份认证机制; - _8)_**完善的log信息:** 在开发调试阶段,确保每一个算法关键步骤都有日志输出,让您的运行调试更为便利; - _9)_**界面代码解耦:** 实现了UI界面代码与SDK网络通信代码解偶,防止界面代码跟IM核心代码混在一起,不利于持续升级、重用和维护; - _10)_**多端协议兼容:** 实现了与[MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK)各种客户端完全兼容的协议模型。 # 七、文件组成 **SDK代码文件概览:**  **SDK代码文件用途说明:**  # 八、Demo功能说明  # 九、实际运行效果 **1)Demo 的登陆界面运行截图:**  **2)Demo 的主界面运行截图:**  **3)Demo 运行的同时,可以查看详细的 log 输出(方便调试):**  # 十、详细资料 **① MobileIMSDK-鸿蒙Next端的详细介绍:**[点此查看](http://www.52im.net/thread-4766-1-1.html) :point_left: **② MobileIMSDK-鸿蒙Next端的开发手册:**[点此查看](http://www.52im.net/thread-4767-1-1.html) :point_left: **③ MobileIMSDK-开源框架的详细介绍:**[https://gitee.com/jackjiang/MobileIMSDK](https://gitee.com/jackjiang/MobileIMSDK) :point_left:
评论 (
0
)
登录
后才可以发表评论
状态
待办的
待办的
进行中
已完成
已关闭
负责人
未设置
标签
最新动态
未设置
标签管理
里程碑
未关联里程碑
未关联里程碑
Pull Requests
未关联
未关联
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
未关联
分支 (
-
)
标签 (
-
)
开始日期   -   截止日期
-
置顶选项
不置顶
置顶等级:高
置顶等级:中
置顶等级:低
优先级
不指定
严重
主要
次要
不重要
参与者(1)
Java
1
https://gitee.com/jackjiang/MobileIMSDK.git
git@gitee.com:jackjiang/MobileIMSDK.git
jackjiang
MobileIMSDK
MobileIMSDK
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册