开源即时通讯IM框架 MobileIMSDK v6.5 发布

一、更新内容简介

本次更新为次要版本更新,进行了bug修复和优化升级(更新历史详见:码云 Release Notes、Github Release Notes)。

MobileIMSDK 可能是市面上唯一同时支持 UDP+TCP+WebSocket 三种协议的同类开源IM框架。轻量级、高度提炼,历经10年、久经考验。客户端支持iOSAndroidJavaH5微信小程序Uniapp,服务端基于Netty。

二、MobileIMSDK简介

MobileIMSDK 是一套专为移动端开发的原创IM通信层框架:

  • 历经10年、久经考验;
  • 超轻量级、高度提炼,lib包50KB以内;
  • 精心封装,一套API同时支持UDP、TCP、WebSocket三种协议(可能是全网唯一开源的);
  • 客户端支持 iOSAndroid标准JavaH5、小程序、Uniapp;
  • 服务端基于Netty,性能卓越、易于扩展;
  • 与姊妹工程 MobileIMSDK-Web 无缝互通实现网页端聊天或推送等;
  • 可应用于跨设备、跨网络的聊天APP、企业OA、消息推送等各种场景。

MobileIMSDK工程始于2013年10月,历经10年,起初用作某产品的即时通讯底层实现,完全从零开发,技术自主可控!

您可能需要:查看关于MobileIMSDK的详细介绍。

三、源码托管同步更新

OsChina.net

  • 源码托管: http://git.oschina.net/jackjiang/MobileIMSDK

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

GitHub.com

  • 源码托管: https://github.com/JackJiang2011/MobileIMSDK

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

四、MobileIMSDK设计目标

让开发者专注于应用逻辑的开发,底层复杂的即时通讯算法交由SDK开发人员,从而解偶即时通讯应用开发的复杂性。

五、MobileIMSDK框架组成

整套MobileIMSDK框架由以下7部分组成:

  1. Android客户端SDK:用于Android版即时通讯客户端,支持Android 4.0及以上,查看API文档;
  2. iOS客户端SDK:用于开发iOS版即时通讯客户端,支持iOS 12.0及以上,查看API文档;
  3. Java客户端SDK:用于开发跨平台的PC端即时通讯客户端,支持Java 16及以上,查看API文档;
  4. H5客户端SDK:查看精编注释版;
  5. 微信小程序端SDK:查看精编注释版;
  6. Uniapp端SDK:查看精编注释版;
  7. 服务端SDK:用于开发即时通讯服务端,支持Java 1.7及以上版本,查看API文档。

整套MobileIMSDK框架的架构组成:

 另外:MobileIMSDK可与姊妹工程 MobileIMSDK-Web 无缝互通,从而实现Web网页端聊天或推送等。

六、MobileIMSDK v6.5更新内容 

【重要说明】:

MobileIMSDK v6.5 为次要版本,进行了若干优化! 查看详情 (github)

【新增重要特性】:

  • 1. [Android端] 新增了Demo中当APP处于后台时,收到消息时显示系统通知的功能。

【解决的Bug】:

  • 1. [服务端] 尝试解决极小几率下Android端会误把“自已”踢掉的问题。

【其它优化和提升】:

  • 1. [服务端] 升级了log4j2等基础库,解决基础库低版中带来的安全漏洞风险;
  • 2. [服务端] 服务端SDK和Demo工程已迁移至IDEA;
  • 3. [Java端] Java桌面端的TCP和UDP两种协议的SDK和Demo工程已迁移至IDEA;
  • 4. [Android端] 提升targetSdkVersion至34(即Android 14);
  • 5. [Android端] 解决了Demo中绑定前台服务在Android 14中崩溃等问题。
  • 6. [iOS端] 提升最低系统支持版本为iOS 12;
  • 7. [iOS端] 优化了JSON解析库中的一处过时API调用。

【最新版本源码地址】:

  • Gitee:https://gitee.com/jackjiang/MobileIMSDK/releases/tag/6.5
  • Github:Release v6.5 · JackJiang2011/MobileIMSDK · GitHub

七、Demo运行演示

八、技术应用示例

8.1 示例1:基于MobileIMSDK的移动端IM RainbowChat(更多运行截图):

8.2 示例2:基于MobileIMSDK-Web的Web端IM RainbowChat-Web(更多运行截图):

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/606005.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OpenGVLab/InternVL-Chat-V1-5-Int8

openedai-vision 代码仓库 OpenGVLab/InternVL-Chat-V1-5-Int8 模型文件地址 示 算力平台AutoDL df -h /root/autodl-tmp tar -xvf FileName.tartar -xvf 安装 克隆我们的仓库并跳转到相应目录 2. 创建 conda 环境 cond…

解决Vue devtools插件数据变化不会自动刷新

我们使用devtools插件在监测vuex中表单或自定义组件的数据,发现页面数据发生变化后,但是devtools中还是老数据,必须手动点击devtools刷新才能拿到最新的数据。很烦! 解决方案: 打开chrome的设置,向下翻&…

安服仔养成篇——基线检查

基线检查概念理解 先放白嫖来的解释: “安全基线是保持信息系统安全的机密性、完整性、可用性的最小安全控制,是系统的最小安全保证,最基本的安全要求。” 啥意思呢,基线检查其实就是对操作系统、中间件、数据库、网络设备等多…

2024挂耳式耳机怎么选?5款高性价比开放式耳机推荐榜

近年来,开放式耳机受到了越来越多人的关注,特别是对于运动爱好者来说,在运动的过程中,传统的有线耳机不适合户外运动,不仅佩戴不稳,线还容易缠绕,而普通的蓝牙耳机长时间佩戴会感觉耳朵不适。在…

武汉星起航:亚马逊五大促销类型全面解析,打造销售狂欢新篇章

在全球电商领域,亚马逊以其卓越的平台优势和创新的促销策略,为卖家和消费者搭建了一座互通的桥梁。今天,武汉星起航在这里解析亚马逊的五大促销类型,帮助卖家和消费者更好地把握商机,享受购物的乐趣。 一.…

sql 注入 1

当前在email表 security库 查到user表 1、第一步,知道对方goods表有几列(email 2 列 good 三列,查的时候列必须得一样才可以查,所以创建个临时表,select 123 ) 但是你无法知道对方goods表有多少列 用order …

如何在六个月内学会任何一门外语(ted转述)

/仅作学习和参考,勿作他用/ a question : how can you speed up learning? 学得快,减少在学校时间 结果去研究心理学惹 spend less time at school. if you learn really fast , you donot need to go to school at all. school got in the way of …

邮箱Webhook API发送邮件的性能怎么优化?

邮箱Webhook API发送邮件的步骤?如何用邮箱API发信? 随着业务规模的扩大,如何高效地通过邮箱Webhook API发送邮件,成为了许多企业面临的关键问题。下面,AokSend将探讨一些优化邮箱Webhook API发送邮件性能的方法。 邮…

Tomcat端口占用解决方案

Windows操作系统 出现这种情况: Error was Port already in use :40001;nested exception is :java.net.BindException: Address already in use : JVM_Bind; 步骤1:按下winR键,输入cmd 步骤2:输入以下命令 netstat …

基于D1开发板和腾讯云nginx服务器构建家庭视频监控方案

腾讯云服务器使用nginx搭建rtmp服务器 什么是nginx? nginx是一款优秀的反向代理工具,通过nginx可以实现搭建高可用的轻量级web服务器,除此之外,通过Nginx自带的rtmp模块,也可以实现rtmp服务器的搭建。 安装nginx 安装编…

ESD静电问题 | 摄像头空气放电重启

【转自微信公众号:必学大课堂】

【Android Studio】开启真机调试

1 打开手机的开发者模式 各种款式的手机进入开发者模式的情况不同,但大致是在 【关于手机】中多次点击系统版本即可进入。这里以小米8为例,记录下流程。 1.1 进入手机开发者模式 【设置】->【我的设备】->【全部参数】->【MIUI版本】连续点击3…

【go项目01_学习记录02】

学习记录 1 新建项目2 自动重载安装air安装完成,查看版本:air -v使用air: air 3 设置标头4 如何知道 http 包有哪些接口呢?5 Web 数据响应6 小结 1 新建项目 windows系统,cmd: cd %GOPATH%/src //%GOPATH%表示取环境变…

一套C语言VC + MSSQL开发PACS系统源码 带三维重建和还原的PACS医学影像全套系统源码

一套C语言VC MSSQL开发PACS系统源码 带三维重建和还原的PACS医学影像全套系统源码 本套PACS系统成品源码,自主版权。集成三维影像后处理功能,包括三维多平面重建、三维容积重建、三维表面重建、三维虚拟内窥镜、最大/小密度投影、心脏动脉钙化分析等功…

如何将jsp项目转成springboot项目

昨天说过,springboot推荐使用Thymeleaf作为前后端渲染的模板引擎,为什么推荐用Thymeleaf呢,有以下几个原因: 动静结合:Thymeleaf支持HTML原型,允许在HTML标签中增加额外的属性来实现模板与数据的结合。这样…

【投稿资讯】区块链会议CCF C -- CoopIS 2024 截止7.10 附录用率

会议名称:CoopIS CCF等级:CCF C类学术会议 类别:人机交互与普适计算 录用率:2023年接收率21% (21 regular 10 work-in-progress papers/100) AREA 5: HUMAN-CENTRIC SECURITY AND PRIVACY IN INFORMATION SYSTEMS Access Con…

编程入门(六)【Linux系统基础操作四】

读者大大们好呀!!!☀️☀️☀️ 🔥 欢迎来到我的博客 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️寻至善的主页 文章目录 🔥前言🚀if else条件控制基本的if语句带else的if语句嵌…

一文了解队列

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、队列是什么?二、队列的实现三、功能函数的实现1.节点定义2.队列初始化3.队列销毁4.队列尾插5.队列头删6.返回队头数据7.返回队尾数据8.返回队列…

电脑那些可以升级的基本配置

一. 中央处理器(CPU):(若不是焊点的可以升级) 1、一句话简介: 这是电脑的心脏,决定了电脑的处理能力。常见的品牌有Intel和AMD。 2、换CPU指南: 1) 处理器品牌: - 主要…

mybatis-plus代码

项目结构 config package com.example.mpdemo.config;import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerIntercept…