默认
打赏 发表评论 19
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
RainbowChat 版本更新日志(本贴持续更新...)
微信扫一扫关注!

一、前言


RainbowChat的iOS端情况请见:App Store安装地址持续开发进展...、更多运行截图

最新动态1:已发布RainbowChat[专业版] v11.7性能优化等
最新动态2:专业版iOS端 v9.1 已发布(App Store安装地址持续开发进展...、更多运行截图)。

二、专业版,当前版本:v11.7


v11.7更新日志


(1)Android端主要更新内容:
  • 1)[优化] 优化了首页“消息”列表中单聊类型未正确同步时的收发消息和点击后的处理逻辑;
  • 2)[优化] 优化了首页“消息”列表中同一好友和陌生人会话不能自动合并的问题;

(2)服务端主要更新内容【性能优化】:
  • 1)[优化] 大幅提升群聊性能(改进离线消息存储方式等:异步提交、批量处理);
  • 2)[优化] 升级了mysql驱动至最新版8.4.0;
  • 3)[优化] 优化了离线消息处理性能(异步化、无锁队列、批量处理、事务合并);
  • 4)[优化] 优化了聊天记录处理性能(异步化、无锁队列、批量处理、事务合并);
  • 5)[优化] 优化了“接口1008-26-8”,使得与Web产品联合部署明web前端按时间戳加载的消息不与客户端发生重复;
  • 6)[优化] 修改了离线消息、聊天记录异步定时器实现,使之运行更健壮;
  • 7)[优化] 加好友成功后将成功通知保存至离线消息和消息记录;

v11.6更新日志


(1)Android端主要更新内容【bug修复和优化】:
  • 1)[bug] 解决了APP从后台恢复时,有一定几率因后台多线程操作好友数据导致的线程安全崩溃问题;
  • 2)[优化] 加固了一处好友列表中根据昵称取拼音首字母的非空检查逻辑;

(2)服务端主要更新内容:
  • 1)[bug] 升级了MobileIMSDK至v6.5,尝试解决极小几率下Android端会误把“自已”踢掉的问题
  • 2)[bug] 解决了因Netty库版本升级导致iOS消息推送失败报错的问题:
  • 3)[bug] 解决了消息撤回时,被引用消息的历史记录没有正确处理撤回逻辑;
  • 4)[优化] 为“接口1008-26-7”增加了“at_me”字段的返回;
  • 5)[优化] 优化了“接口1008-26-8”,使得在跟Web互通时支持按时间戳的聊天记录分页加载方案;
  • 6)[优化] 为“接口1008-26-8”增加了“消息发送者昵称”内容的返回;

v11.5更新日志


(1)Android端主要更新内容【bug修复和升级】:
  • 1)[bug] 解决了“@”提醒在客户端新消息时未持久化的问题;
  • 2)[bug] 解决了首页“一键已读”功能不清除“@”提醒标记的问题;
  • 3)[bug] 解决了消息转发时,“最近消息”列表中的表情内容没有被转义成表情图标的问题;
  • 4)[bug] 解决了查看iOS端发的引用的文件消息时,无法跳转到文件下载界面的问题;
  • 5)[bug] 解决了查看iOS端发的引用的短视频消息时,无法跳转到短视频下载界面的问题;
  • 6)[升级] 提升targetSdkVersion至34,全面兼容Android 14;
  • 7)[升级] 解决了绑定前台服务在Android 14中崩溃的问题;
  • 8)[升级] 升级权限管理框架XXPermissions至18.62,全面兼容Android 14;
  • 9)[升级] 其它基础库升级等。

(2)服务端主要更新内容:
  • 1)[bug] 修复一处跟RainbowChat-Web产品联合部署时,Web端无法成功加载历史记录的问题;
  • 2)[升级] 升级了包括log4j2等在内的一些基础库版本;
  • 3)[升级] 优化了iOS离线推送时苹果手机端的桌面未读数角标显示;

v11.0更新日志


(1)Android端主要更新内容【新增“@”功能、消息引用功能等】:
  • 1)[新增] 新增“@”功能;
  • 2)[新增] 新增消息引用功能(支持引用全部消息类型);
  • 3)[bug] 解决了转发的是收到的短视频消息时,发送者这边不从网络加载预览图的问题;
  • 4)[bug] 解决了离线好友消息在首页“消息”列表上显示的时间不是最后一条消息的发送时间问题;
  • 5)[优化] 首页消息列表中的语音消息将显示语音时长(跟新版微信一样);
  • 6)[优化] 其它优化及bug修复。

(2)服务端主要更新内容:
  • 1)[新增] 增加了“@”功能相关数据字段和代码逻辑的实现;
  • 2)[新增] 增加了消息引用功能相关数据字段和代码逻辑的实现;
  • 3)[优化] 更新了消息推送特权接口,支持陌生人、好友、群聊3种消息的推送,且增加了主机ip检查(提高安全性);

(3)新增功能运行截图:




v10.0更新日志


(1)Android端主要更新内容【新增群名片、消息转发功能等】:
  • 1)[新增] 新增发送“群名片”消息功能;
  • 2)[新增] 新增了消息转发功能;
  • 3)[新增] 新增了实时音视频聊天记录的功能;
  • 4)[bug] 解决了加载离线消息可能导致首页“消息”列表出现重复item的问题;
  • 5)[优化] 修正了实时语音聊天呼叫ui上的提示文字错误;
  • 6)[优化] 取消了实时音视频聊天必须对方在线才能呼叫的限制;
  • 7)[优化] 安全提升,优化了http接口、文件上传接口、socket长连接的token校验逻辑;
  • 8)[优化] 更换了新的高德地图WebSevice key;
  • 9)[优化] 其它ui细节优化等。

(2)服务端主要更新内容:
  • 1)[新增] 安全提升,实现了一套新的token生成、校验机制(支持对称加密和非对称加密两种模式);
  • 2)[新增] 安全提升,启用了AppKey校验机制;




v9.0更新日志


(1)Android端主要更新内容【适配最新Android系统等多项升级和优化】:
  • 1)[升级] 提升targetSdkVersion至33;
  • 2)[升级] 适配最新Andriod 13+系统的动态权限申请逻辑;
  • 3)[升级] 解决了Android13+系统全面屏手机上,APP下方出现大约15dp的黑色空白问题;
  • 4)[升级] 解决了Android13+手机上无法显示Notification通知的问题(Android13新增了通知权限,需动态申请后才能显示);
  • 5)[优化] 重新优化了闪屏、登录、帮助、忘记密码、注册、注册成功、查找用户、实时语音、实时视频等共计13个界面的UI设计;
  • 6)[优化] 其它未提及的ui细节优化和美感提升。
  • 7)[bug] 解决了从好友列表中打开群聊界面,不显示“返回”按钮的问题。
  • 8)[ 解决了当处于群聊界面时,群主更新群名称时,不能同步刷新群聊界面标题上的群名称显示。

(2)服务端主要更新内容:
  • 1)[优化] 解决了桥接模式下与最新rabbitmq库不兼容从而断线重连不成功,导致MQ中消息堆积的问题:
  • 1)[优化] 解决了桥接模式下MQ断线自动恢复时未主动清理Chanel,导致Chanel越来越多的问题;




v8.4更新日志


(1)Android端主要更新内容【通信层优化和提升】:
  • 1)[优化] 可根据http接口的url自动判断并启用https加密;
  • 2)[优化] 升级核心长连接通信层库MobileIMSDK v6.3
  • 3)[优化] 提供了灵活的接口定制和开启长连接的SSL/TLS加密传输。

(2)服务端主要更新内容:
  • 1)[优化] 升级核心长连接通信层库MobileIMSDK v6.3
  • 2)[优化] 开放了灵活的接口定制和开启长连接的SSL/TLS加密传输。

v8.3更新日志


(1)Android端主要更新内容【bug修复及优化】:
  • 1)[bug]当首页“消息”列表所有的item都是置顶时,取消其中任一个置顶,都会错误地将其排在列表首位而不是列表末尾;
  • 2)[bug]解决了从首页“消息”列表中遗留的陌生人聊天信息无法重置消息未读数的问题;
  • 3)[bug]解决了聊天界面中底部面板和输入法软键盘切换时ui发生弹跳的问题;
  • 4)[优化]重构了APP包名、应用名,防止被某些手机误报成恶意软件。
  • 5)[优化]重构了搜索功能相关的代码,使之更易理解和维护;
  • 6)[优化]优化了APP中各种文本输入框UI效果,以及其它UI细节;
  • 7)[优化]解决了自定义长按菜单在某些机型上item文字会换行的问题;
  • 8)[优化]大文件发送时,选择的图片、视频文件可以自动以图片消息和短视频消息的形式发送;
  • 9)[优化]优化了APP处于后台时,收到实时语音/视频请求的通知形式(用高优先级的系统Notification方式提醒用户)。

(2)服务端主要更新内容:
  • 1)[bug]解决了uid登陆时的sql注入风险;
  • 2)[优化]升级MobileIMSDK 至v6.2正式版。

v8.2 r2更新日志


(1)Android端主要更新内容【新增“搜索”等功能及优化!】:
  • 1)[bug]解决了客户端被踢掉后,再次登陆时提示socket错误的问题;
  • 2)[优化]优化了扫码加群界面中,群头像加载失败时的默认显示样式;
  • 3)[优化]优化了切换账号和被踢时跳转到登陆界面的切换性能;
  • 4)[优化]重构了主要类代码,更方便集成;
  • 5)[新增]搜索功能(支持好友、群聊、聊天记录搜索(与微信逻辑一样));
  • 6)[新增]“聊信信息”界面中新增“查找聊天记录”功能;
  • 7)[新增]“群聊信息”界面中新增“查找聊天记录”、“清空聊天记录”功能;
  • 8)[优化]优化了相关界面在全面屏手机上的沉浸式显示效果;
  • 9)[优化]解决了底部弹出式菜单在全面屏手机上顶部有若干像素不能全屏的问题。

(2)服务端主要更新内容:
  • 1)[优化][服务端]升级了MobileIMSDK至v6.2beta(改动了onUserLoginout方法参数);
  • 2)[优化][服务端]解决了log4j2的两个jar包冲突导致在linux下不能正常输出log的问题.

此版主要新增功能运行截图(更多截图点此查看):
RainbowChat 版本更新日志(本贴持续更新...)_search_60pct.jpg

v8.1更新日志


(1)Android端主要更新内容【新增“扫一扫”等功能及优化!】:
  • 1)[新增]“扫一扫”界面及完整功能(支持扫码加好友、加群);
  • 2)[新增]“我的二维码”界面及完整功能;
  • 3)[新增]“群聊二维码”界面及完整功能;
  • 4)[升级]升级okhttp库至4.9.3;
  • 5)[优化]其它小优化。

(2)服务端主要更新内容:
  • 1)[优化]针对扫码加群等功能的相关修改。

此版主要新增功能运行截图(更多截图点此查看):
RainbowChat 版本更新日志(本贴持续更新...)_扫一扫功能

v8.0更新日志


(1)Android端主要更新内容【兼容最新Android12、重写了主界面等重要更新!】:
  • 1)[升级] 适配最新的Andriod 12系统
  • 2)[升级] 升级动态权限库XXPermissions至13.5版(支持Andriod 12及以上版本);
  • 3)[升级] 将所有主要功能中用到的图片缓存库升级为Glide
  • 4)[bug] 解决了世界频道中名片消息不能确认发送的问题;
  • 5)[新增] 新增了“聊天消息”界面,可针对个人设置“消息免打扰”、“置顶”等;
  • 6)[新增] 重新设计并实现了“好友”列表界面,加入了按字母排序和索引能力等;
  • 7)[新增] 首页消息界面中,增加了“一键已读”功能
  • 8)[优化] 重写了主要界面(包括“消息”、“好友”、“群聊”等界面),同时支持Activity和Fragment方式集成;
  • 9)[优化] 采用单Activity形式重写了主界面(子页面为Fragment实现);
  • 10)[优化] 首页“消息”列表中,以“红点”的方式显示“免打扰”的聊天会话;
  • 11)[优化] 主界面下方的tab导航栏上,可实时显示“未读消息数”、“未处理好友请求数”了;
  • 12)[优化] 主界面上的各子页面,现在可通过滑动切换了(就像微信那样);
  • 13)[优化] 更多代码重构、ui细节优化等。

(2)服务端主要更新内容:
  • 1)[优化] 配合客户端所做的若干小优化。

RainbowChat 版本更新日志(本贴持续更新...)_v8_1_400px_75pct.jpg              RainbowChat 版本更新日志(本贴持续更新...)_v8_2_400px_75pct.jpg

v7.3更新日志


(1)Android端主要更新内容【新增消息撤回、好友备注、表情功能等!】:
  • 1)[新增] 增加了消息“撤回”功能,体验与微信保持一致(支持双向撤回);
  • 2)[新增] 增加了设置好友备注(及附属字段)的功能;
  • 3)[新增] 新增加了聊天消息删除功能
  • 4)[新增] 新增加了表情功能
  • 5)[优化] 升级MobileIMSDK库至v6.1.2版
  • 6)[优化] 优化了好友数据及首页“消息”列表中title的更新和显示逻辑,使之及时保持最新;
  • 7)[优化] 优化了用户信息、个人中心的小图标等。

(2)服务端主要更新内容:
  • 1)[bug] 解决了陌生人消息发出跟收到的指纹码不一致的问题;
  • 2)[优化] 离线消息表中,为群聊增加了父指纹码字段(将用于消息撤回时);
  • 3)[优化] 针对消息“撤回”功能,对离线消息、消息记录、消息类型及相关逻辑进行了优化;
  • 4)[优化] 为好友备注功能增加了字段、若干接口和相关逻辑优化;
  • 5)[优化] 升级log4j2至2.17.0,解决官方远程代码执行高危漏洞

RainbowChat 版本更新日志(本贴持续更新...)_11_03.jpg       RainbowChat 版本更新日志(本贴持续更新...)_22_03.jpg

v7.2更新日志


(1)Android端主要更新内容【全面适配最新Andriod系统等!】:
  • 1)[优化]将整个工程的targetVersion提升为30(全面兼容Andriod11)
  • 2)[优化]更换了动态权限库,支持最新Andriod10、11及以上版本的分区存储等权限
  • 3)[优化]解决了自定义Toast在Andriod10、11及以上版本的兼容问题;
  • 4)[优化]将netty和高德地图的sdk改为maven加载方式;
  • 5)[bug]解决了位置消息聊天气泡中的图片黑边问题;
  • 6)[优化]支持Andriod10以上版本中的分区存储,适配了所有文件读写有关功能
  • 7)[优化]升级了MobileIMSDK库至v6.1.1版(见MobileIMSDK更新日志);
  • 8)[新增]增加了多端登陆互踢功能
  • 9)[优化]解决了当前打开的页面不是APP主页时,不能显示实时语音、视频聊天呼叫请求的问题;
  • 10)[优化]将所有界面自定义标题栏的标题显示改为居右(之前是居左显示);
  • 11)[优化]优化了自定义无穷进度Dialog、自定义大Toast的UI显示效果;
  • 12)[优化]解决了在Andriod11及以上系统中不能自定义Toast的问题(Andriod11中不允许通过Toast.getView()进行自定义);
  • 13)[优化]优化了弹出式菜单的UI显示效果;
  • 14)[优化]更换了几种大文件消息图标;
  • 15)[优化]优化了未读消息数红色气泡背景在小米高分辨率手机上有严重锯齿的问题;
  • 16)[优化]优化了登陆界面UI(更换了背景图并实现了微动画效果)。

(2)服务端主要更新内容:
  • 1)[bug]解决了因LoginInfo中dontClearDeviceToken无get和set方法,而导致ios提交上来的数据在服务端JSON反序列化时不能正确反射字段内容而导致错误清除token的问题。

v7.1更新日志


(1)Android端主要更新内容【优化了聊天界面UI风格,更现代化!】:
  • 1)[优化]用户给于锁屏显示权限的情况下,可以在锁屏显示通知;
  • 2)[优化]首页“消息”界面的标题可以像微信一样同步显示未读消息总数了;
  • 3)[优化]优化了主要按钮的ui,使用shape提升自定义便性等;
  • 4)[优化]优化了聊天界面各处ui细节,使之体验更好、更具现代感;
  • --
  • 5)[bug]解决了一处内存泄漏问题(见OnLoginIMServerDialogProgress.java);
  • 6)[优化]优化了聊天界面和输入文本框的背景色、文本聊天气泡的默认最小宽度;
  • 7)[优化]升级腾讯Bugly SDK至3.3.3版;
  • 8)[优化]优化了消息气泡中短视频消息的视频时长显示方式,由原“10''”形式改为“0:10”表示10秒视频;
  • 9)[bug]解决了从加好友成功的系统通知点进来时,仍然提示“不是好友,无法聊天”的问题;
  • 10)[优化]解决了用于演示的“商城”功能无法显示内容的问题;
  • 11)[优化]查看好友信息界面中,相册预览图现在是圆角显示了。

(2)服务端主要更新内容:
  • 1)[优化]解决了iOS APP在被强杀时(会自动提交注销登陆请求)服务端会无条件清除DeviceToken,从而无法收到APNs离线推送;
  • 2)[优化]升级MobileIMSDKServer.jar至v5.0.4版。

v7.0更新日志


(1)Android端主要更新内容【本版将同时支持TCP、UDP两种协议!】:
  • 1)[优化]整个工程的support包升级到了Android X;
  • 2)[优化]解决Android 5.0以下机型的Dex中方法数不能大于65535的问题;
  • 3)[bug]解决了群聊界面中,长按复制菜单的弹出判断条件逻辑搞反的问题;
  • 4)[bug]解决了一处反复登陆和退出登陆会有小概率发生APP崩溃的问题;
  • 5)[bug]解决了首页“消息”列表中的好友聊天时,对方头像一段时间后无法显示的问题;
  • 6)[新增]升级至MobileIMSDK v5.0,通信层可支持UDP、TCP两种协议

(2)服务端主要更新内容:
  • 1)[bug]升级pushy及SSL依赖包至0.14.1版,解决iOS端APNs离线推送不成功的问题;
  • 2)优化了服务端ACK逻辑,在极端网络下提升消息体验;
  • 3)简化了部分离线消息处理、离线消息推送的代码。

v6.0更新日志


(1)Android端主要更新内容:
  • 1)[优化]与Web产品对接时,聊天界面中可显示Web发过来的“位置”消息预览图了;
  • 2)[bug]解决了发送“位置”消息时,在Android 10手机上崩溃的问题;
  • 3)[优化]增加了自动登陆功能;
  • 4)[优化]主界面上点back按键时,将回到桌面(此前提示是否退出app);
  • 5)[bug]解决了群聊时,接收到的“名片”消息,显示的发送者昵称错为“名片”者的昵称;
  • 6)[优化]重构了聊天列表中的消息类型,简化代码,方便开发者增加新的消息类型等;
  • 7)[优化]重构了首页“消息”功能中的代码,重构逻辑、简化代码,方便开发者2次开发;

(2)服务端主要更新内容:
  • 1)[优化]陌生人消息发送和接收时指纹码(唯一ID)不同的问题(优化后就相同了);
  • 2)[bug]解决了对接web产品时,web首页“消息”接口在SQL Server数据库下的兼容性问题;
  • 3)[bug]解决了web产品时,web首页“消息”接口在sql server下,会错误地把陌生人判断为好友;
  • 4)[bug]解决了web产品时,大文件消息在Fixfox等浏览器中下载时文件名乱码的问题。

v5.1更新日志


(1)Android端主要更新内容【本版新增名片、位置消息,及众多优化和更新!】:
  • 1)[优化]重构了部分代码和包名,目的是为了让代码更具可读性、可维护性,降低复杂度;
  • 2)[优化]rainbowav的.so库,目的防止在老机器上的崩溃;
  • 3)[新增]陌生人聊天、世界频道中,支持大文件、短视频消息了
  • 4)[优化]美化了自定义AlertView的UI样式
  • 5)[优化]解决了Android5.0及以上系统中,图片来源弹出窗无法覆盖状态栏的问题(否则留海屏下太难看);
  • 6)[优化]美化了从底部弹出菜单的UI样式(跟微信一样);
  • 7)[bug]解决了本地用户个人信息中修改密码时,当表单数据检查未通过时,对话框的半透明背景消失的问题;
  • 8)[bug]解决了大文件查看界面中,下载按钮按中时的图片问题;
  • 9)[bug]修正了CheckBox在某款华为平板上的ui显示问题;
  • 10)[优化]调整了聊天界面中,语音留言消息气泡的长度:由120dp改为150dp;
  • 11)[新增]新增“个人名片”消息(及完整功能逻辑);
  • 12)[优化]重写了聊天界面下方的更多功能区,支持多页和自动分页能力
  • 13)[新增]新增“位置”消息(及完整功能逻辑);
  • 14)[优化]重新实现了全新的WebView网友查看界面,体升用户体验
  • 15)[优化]优化了聊天界面更多面板上的图标等;
  • 16)[优化]语音留言、个人介绍语音中录音UI在刘海屏下的状态栏显示问题;
  • 17)[优化]礼物弹出界面在刘海屏下不能覆盖状态栏的问题,以及相关ui的细节优化;
  • 18)[优化]商城ui的部分细节优化;
  • 19)[优化]群聊界面标题上可以显示“消息免打扰”图标了;
  • 20)[新增]群信息界面里新增加“置顶聊天”、“显示群成员昵称”开关;
  • 21)[优化]群信息界面里原“新消息提醒”改为“消息免打扰”,开关逻辑也随之变化;
  • 22)[新增]群聊界面、世界频道里,可以在聊天消息中显示群成员昵称了
  • 23)[bug]修正了群内系统消息,因群成员昵称修改后,显示内容未能即时使用最新昵称的问题;
  • 24)[优化]当陌生人已加为好友时,发送消息时能提示并引导进好友聊天模式;
  • -----------
  • 25)[优化]与Web产品对接时,聊天界面中可以显示发过来的“位置”消息预览图了;
  • 26)[bug]解决了发送“位置”消息时,在Android 10手机上崩溃的问题。

(2)服务端主要更新内容:
  • 1)[优化]解决了iOS端调用大文件上传接口时,中文文件名的乱码问题;
  • 2)[优化]当用户头像已被设置或头像文件不存在于服务端磁盘上时(这一般是迁移数据时忘记迁移头像文件了),也会返回1像素透明默认图;
  • -----------
  • 3)[优化]优化了陌生人消息发送时和接收时的消息指纹码(唯一ID)不相同的问题(优化后就相同了)。

v5.0r6更新日志


(1)Android端主要更新内容【本版支持arm64、x86等!】:
  • 1)[优化]升级音视频子系统至RainbowAV 2.2版。
  • 2)[bug]解决查找用户结果界面中,头像会重复且错误地显示的问题;
  • 3)[优化]优化了群公告发布后,不能即时显示修改人信息的问题;
  • 4)[优化]优化了视频聊天相关界面、语音留言录音等界面的UI细节,以及一些图标、图片色调的优化;
  • 5)[优化]音视频已升级至v2.2.1,支持arm64-v8a、x86架构,提升性能并符合Google play要求;
  • 6)[优化]解决了因音视频库无x86版,而无法在模拟器上运行的问题。

(2)服务端主要更新内容:
  • 1)[服务端][优化]GroupEntity对象中,update()方法新建了3个字段的维护。

v4.6更新日志


(1)Android端主要更新内容【本版全面升级了UI界面!】:
  • 1)[bug]解决了高版本Android系统时拉取的离线聊天消息,下次登陆显示时有一定几率发生逆序的问题;
  • 2)[优化]优化了查看图片界面的UI;
  • 3)[优化]优化了本地用户头像裁剪界面的UI;
  • 4)[优化]优化了“好友”界面“更多”按钮的弹出菜单UI和体验;
  • 5)[优化]首页“消息”界面标题栏上,“Add”按钮可以弹出弹单,并加入了创建群组功能链接;
  • 6)[优化]使用RecyclerView重写了“随机查找好友结果”界面,并新增加了“换一批”功能;
  • 7)[优化]首页“消息”的item中、用户信息界面中,增加了“陌生人”标识的显示;
  • 8)[优化]本地用户的个人中心中,带有“NEW”标签的功能,点击后就不再显示NEW标签了;
  • 9)[优化]本地用户、用户信息界面中,相册、语音数量UI组件的显示逻辑优化;
  • 10)[bug]解决了某个边界情况下,好友会重复添加并显示在好友列表中的问题;
  • 11)[优化]全面提升整个APP各种UI细节的美化、优化、体验等
  • 12)[bug]解决了首页消息等地方的未读数红包背景不能自动拉伸的问题;
  • 13)[bug]解决了首页“消息”中,静音图标的显示错乱问题;
  • 14)[优化]优化了图片消息、短视频消息的预览图大小,使得在高分辨率手机上预览图更大更清晰。

RainbowChat 版本更新日志(本贴持续更新...)_未标题-1.jpg
▲ 新旧版本对比更多截图点此查看

(2)服务端主要更新内容:
  • 1)[优化]配合客户端优化了图片消息、短视频消息的预览图大小,使得在高分辨率手机上预览图更大更清晰。

v4.5更新日志


(1)Android端主要更新内容【本版全面支持Android 9.0,并支持对接RainbowChat-Web产品】:
  • 1)[优化]首页“消息”和聊天界面里的显示的时间,参考微信的逻辑,进行更优化的人性化显示;
  • 2)[优化]去掉了群聊中,去掉了“删除群、解散群、转让群” 3个接口中的gname参数;
  • 3)[优化]升级了MobileIMSDK android端库至v4.0,尝试解决OOM问题(但有客户说新升级会导致掉线?这需要持续观察!)
  • 4)[优化]限制了聊天界面中输入框输入字数,防止超长被UDP传输层截断;
  • 5)[优化]解决了Android 8.0及以上版本时,无法查看大文件内容的问题;
  • 6)[优化]解决了当MiniSdkVersion和TargetSdkVersion属性大于等于13的情况下,在某些android平板上,从横屏时锁屏状态解锁时,某些界面可能会被重新onCreate的问题(详见:https://www.cnblogs.com/zfyouxi/p/5332019.html);
  • 7)[优化]解决了Notification在新版Android系统上的兼容性,包括Android 9上崩溃的问题;
  • 8)[优化]解决了聊天界面中强制隐藏输入法功能在Android 9上崩溃的问题;
  • 9)[升级]升级了okhttp至v3.12.3、gson至v2.8.5;
  • 10)[优化]实现了一套当APP进程被安全助手、系统等非正常杀掉时,可以优雅地从崩溃状态重启的机制;
  • 11)[优化]全面支持新版Android动态权限申请机制(包括:存储权限、相机权限、录音权限对应的所有功能);
  • 12)[优化]整个工程已升级至targetSDKVersion=28(即针对Andriod 9的各种优化)
  • 13)[升级]升级RainbowAV库至v2.2,解决一些高档手机中黑屏等问题;
  • 14)[优化]适配全面屏等;
  • 15)[优化]升级MobileIMSDK 至v4.0.1,解决若干网络bug;
  • 16)[优化]升级所有Activity为AppCompatActivity,并使用最新AppCompat主题;

RainbowChat 版本更新日志(本贴持续更新...)_WX20190621-164406@2x.jpg
▲ targetSDKVersion已提升至28(即Android 9.0)

(2)服务端主要更新内容:
  • 1)升级MobileIMSDK至v4.0版;
  • 2)全面重构了消息或指令实时发送的逻辑,使之支持与Web的互通通信;
  • 3)全面重构了消息或指令的离线处理逻辑,支持与Web互通通信时的离线处理逻辑;
  • 4)[bug]修正了一种极端情况下,重复的大文件上传完成后,更新数据库表信息时sql未加where条件的问题;
  • 5)[优化]优化了用户头像下载接口,使得在web端调用时未设置头像的用户能返回默认图;
  • 6)[优化]优化了短视频首帧图片下载接口,使得在web端调用时未加载到图片文件时能返回默认图;
  • 7)[优化]升级APNs的推送库pushy至v0.13.6;
  • 8)[优化]去掉了好友请求验证处理对象里不需要的邮箱字段;
  • 9)[新增]“接口1008-26-7”、“接口1008-26-8”、“web端专用文件上传接口”、“接口1008-1-25”、“接口1008-3-24”、“接口1008-3-25”、“接口1008-3-26”、“接口1008-4-9”;
  • 10)[优化]把离线消息也主动记录到服务端的聊天记录里;
  • 11)[优化]优化了聊天消息中的图片文件、语音文件、短视频超期清理定时器的Timmer实现,使之更健壮;
  • 12)[新增]增加了聊天记录、离线消息的超期转储定时器(目的是优先保持热数据表的性能);
  • 13)[优化]优化了”解散群组“接口,使之在解散时能将群聊天记录转入存档表;
  • 14)[优化]优化了”删除好友“接口,使之在删除好友时能将聊天记录转入存档表、并同时删除未被拉取的离线消息;
  • 15)[bug]解决了”解散群组“时,离线消息的APNS推送逻辑无法正常走完的问题(原因是高速缓存被过早称除)(影响版本:v4.5);
  • 16)[bug]解决了APP跟Web互通聊天时,陌生人消息记录会重复的问题。
  • 17)[bug]解决了群聊消息记录重复的问题;
  • 18)[优化]优化了【接口1008-26-8】,使之支持群聊消息记录的查询;
  • 19)[优化]群聊时各种指令通知等也存入了聊天记录了(方便Web端使用);
  • 20)[优化]优化了【接口1008-26-7】,使之支持群聊消息数据;
  • 21)[优化]优化了群组头像下载接口,使得在web端调用时文件读取异常的情况下能返回默认图;
  • 22)[优化]群聊消息发送时,服务端扩散写到客户端路径,QoS由之前的false改为了现在的true;
  • 23)[优化]优化了防SQL注入的字符匹配逻辑。
  • 24)[bug]解决了APP发给离线的Web陌生人时,聊天记录重复的问题;
  • 25)[优化]重新整理的离线消息、消息记录的处理逻辑,简化设计,消除逻辑bug隐患;
  • 26)[优化]当APP产品跟Web产品互通时,APP端读取图片、语音留言时dump参数将被强制失效,防止web端加载聊天记录时因文件被转储而加载不到;
  • 27)[bug]解决了Web发给APP的好友聊天消息没有存聊天记录的问题;
  • 28)[bug]解决了当界面数据没有及时刷新情况下,新群主点“退群”而错误地出现群主却能退群的数据不一致性问题;
  • 29)[新增]新增“【接口1008-5-8】:删除聊天消息记录”,目前已用于Web产品,目前其它端暂时用不上本接口;
  • 30)[优化]专为Web产品优化了聊天记录接口、首页“消息”接口,使得删除“首页”消息后,web端就不会加载到此时间之前的聊天记录;
  • 31)[优化]优化了专用于Web产品的http文件上传接口,使得支持web端产品的用户头像上传完整处理逻辑;
  • 32)[优化]优化了服务端的拉取好友请求接口,解决了Web端调用时当请求说明中存在\t等特殊字符时不能正确被JSON.parse()解析的问题。

v4.4更新日志


(1)Android端主要更新内容:
  • 1)[bug]解决了大文件消息的文件查看界面中的一个小bug/优化;
  • 2)[bug]解决了一方切换账号后,实时音视频只能单向接通的问题;
  • 3)[优化]优化了聊天界面中的消息气泡显示,当为电话、网址、邮箱等内容时,自动加上超链接;
  • 4)[优化]实现了所有聊天界面中的长按消息气泡复制文本消息的功能;
  • 5)[优化]发送文件功能中,优化了文件选择器:增加了“收到的文件”默认目录内容显示,以及与“系统存储卡”的目录切换能力等;
  • 6)[优化]实现了所有聊天界面中的发送失败消息的重发功能;
  • 7)[新增]实现短视频功能(支持群聊、好友聊天中使用):
  •     * [难点]提供一个高度兼容的视频录制界面及功能逻辑实现;
  •     * 视频录制时的 30 秒限制功能、计时器功能;
  •     * 视频的转码、压缩;
  •     * 视频的上传及消息指令的发送;
  •     * 视频首帧的提取(用于消息气泡上的预览效果显示);
  •     * 视频的下载、离线缓存功能;
  •     * 视频的播放、暂停功能;
  • 8)[bug]解决了网络故障情况下,好友列中删除好友可能会发生崩溃的问题。

RainbowChat 版本更新日志(本贴持续更新...)_a.jpg

(2)服务端主要更新内容:
  • 1)支持短视频消息完整功能;
  • 2)优化安全性:防止SQL注入攻击。

v4.3更新日志


(1)Android端主要更新内容:
  • 1)升级Android客户端工程并迁移至Andriod Studio;
  • 2)重构整个工程:降低子工程依赖、删减不必要的代码,使客户端工程更易于研究、学习和2次开发;
  • 4)优化陌生人聊天消息体对象TempChatMsgDTO中多余的字段;
  • 5)全面重构聊天消息IM协议的body数据结构,使之规范化、易扩展和易理解(见MsgBody4Root);
  • 6)解决了陌生人聊天时,只要陌生人聊天界面处于打开状态,其他陌生人发送的消息不自动累计未读数;
  • 7)将原世界频道的所有数据模型、界面逻辑作为一个特殊的群聊类型合并到普通群聊中,大大降低代码冗余、简化理解;
  • 8)升级到RainbowAV_v2.1b180420修改VCCarmera.java,尝试解决绿屏问题;
  • 9)整理优化Android客户端、服务端无意义的代码,并修订一些代码注释使之更有意义;
  • --------
  • 10)实现了首页“消息”界面中item的置顶或取消置顶功能;
  • 11)实现了首页“消息”界面中item的设置已读或设置未读功能;
  • 12)全面重构了首页”消息“、一对一/陌生人/群组聊天中的所有指令和消息时间字段(改为时间戳),实现UI显示时的时区自适应;
  • 13)实现了首页“消息”界面中,长按弹出仿微信的浮动菜单功能(用于解决系统默认菜单在不同厂商手机上的UI兼容问题);
  • 14)解决了“个人中心”,个人相册和语音介绍文字后的“new”图标,在字体变化时会盖住前面的文字的问题;
  • 15)实现图片查界面中,将图片保存到系统相册的功能;
  • 16)[服务端]上传用户头像时,将同时生成一个头像的缩略图;
  • 17)网络连接断开的情况下,发送消息时应显示友好中文,而不是显示code等英文;
  • 18)重构了http、im实用类的包位置,以及所有的消息发送实用类中的异步发送方法等;
  • --------
  • 19)群组列表管理界面与功能逻辑;
  • 20)创建群组的界面和功能逻辑:
  •     * ok 默认群名称生成逻辑优化;
  •     * ok 建群完成后列表界面的刷新显示;
  •     * ok 服务端db中触发器实现群成员插入、删除时,自动更新群主表的“当前成员总数”字段。
  • 21)优化陌生人聊天消息体对象TempChatMsgDTO中多余的字段;
  • 22)全面重构聊天消息IM协议的body数据结构,使之规范化、易扩展和易理解(见MsgBody4Root);
  • 23)实现群聊的内存数据模型(含消息过长自动裁剪逻辑);
  • 24)实现群聊的sqlite本地存储;
  • 25)实现群聊的首页“消息”提醒机制;
  • 26)实现群聊的聊天界面及完整UI交互;
  • 27)实现群信息查看界面UI和功能交互逻辑;
  • 28)群聊Http接口和功能逻辑的实现:
  •      * ok 实现群信息查询接口;
  •      * ok 实现群名称修改接口和界面功能逻辑;
  •      * ok 实现群内昵称修改接口和界面功能逻辑;
  •      * ok 实现群公告的编辑接口和界面功能逻辑;
  •      * ok 实现查询群成员列表接口和界面功能逻辑;
  •      * ok 实现群成员查看及成员删除功能:
  •      * ok 实现删除群成员接口和界面功能逻辑;
  •      * ok 实现群成员邀请接口和界面功能逻辑:
  •      * ok 实现转让群接口及功能(群主);
  •      * ok 实现解散群接口及功能(群主);
  •      * ok 实现退出群接口及功能(群员);
  • 29)群聊实时IM指令和展现逻辑的实现:
  •      * ok 建群、群邀请通知指令及指令传输、UI逻辑实现--> 离线的指令待处理!
  •      * ok 别人加入群的通知;
  •      * ok 退群通知指令及指令传输、UI逻辑实现;
  •          * ok 删除某些人或踢掉某些人通知指令及指令传输、UI逻辑实现;
  •      * ok 群转让通知指令及指令传输、UI逻辑实现;
  •      * ok 解散群通知指令及指令传输、UI逻辑实现;
  •      * ok 编辑公告后的群发;
  •      * ok [优化]群已不存在或您已不在此群内,本条消息发送被取消!
  •      * ok [优化]修改群名时的通知指令及指令传输、UI逻辑实现;
  •      * ok [优化]修改群名时,把新群名带过来并立即在用户界面更新掉(要新加一个指令吗?);
  •      * ok [优化]当我已被踢出本群时,就不应该能再查看群信息了;
  •      * ok [优化]收到有人被踢出的通知时,会错误地把我的本地群信息删除,导致转让群主失败的问题;
  •      * ok [优化]优化所有群指令,自已操作的不需要从服务端再发通知过来,直接本地显示是最佳方法;
  • 30)群聊中的文件发送和接收完整功能;
  • 31)实现消息免打扰功能,并在首页消息、群聊列表界面里,将免打扰图标显示出来(像微信一样);
  • 32)[难点]实现一个服务端群成员列表全局高性能缓存模型,用于提升性能(不用每次都得查询数据库);
  • 33)[bug]解决了解散群聊时提示"你的无线网络不给力"的问题;
  • 34)[bug]解决了群员收到的离线群解散通知时,在APP首页”消息“列表里无法显示出群名称(空白的)的问题;
  • 35)群组头像的完整实现逻辑:
  •      * ok 服务端实现头像生成(仿微信:不足4人用4宫格,4人以上9宫格)、更新、读取策略;
  •      * ok 首页“消息”界面中的群组头像加载、显示、缓存实现;
  •      * ok “群组”界面中的群组头像加载、显示、缓存实现;
  •      * ok 本地用户邀请好友入群、删除群员时会发出通知,以便及时刷新首页”消息“列表、”群组“列表的群头像缓存;
  • 36)优化了群头像的刷新及时性:收到有人被踢的通知时重置头像缓存,并在界面刷新时即时刷新头像;
  • 37)解决了群聊界面中,“More”面板打开等情况下,自已发出的消息会被挡住的问题;
  • 38)解决了当从群名称修改界面等情况下回到聊天界面时,标题不能及时刷新的问题;
  • 39)解决了首页“消息”列表中,有人被删除、或有人加入群后,群头像加载的还是上次的头像;
  • 40)优化了群成员查看或群成员管理界面,使得能点击查看成员详细信息;
  • 41)解决了被踢出群者,收到2条被踢通知的问题;
  • 42)群公告修改完成后,让用户确认是否通知全体成员(之前是默认就发送,无需确认);
  • --------
  • 43)大文件的服务端文件存储逻辑、文件信息表的设计;
  • 44)大文件客户端UI图标素材的准备;
  • 45)实现发送和收到的文件消息聊天气泡layout文件制作;
  • 46)构思和实现Android端大文件断点上传的基本算法和代码;
  • 47)构思和实现服务端大文件断点保存的基本算法和代码;
  • 48)服务端实现一个按文件md5码查询文件是否已被上传过(以及上传过的分块数)http接口;
  • 49)测试大文件的数据上传算法和逻辑全流程(客户端+服务端);
  • 50)实现大文件的数据上传进度和状态变更通知机制(给UI即时显示出来);
  • 51)实现大文件消息在客户端的收到和发送的处理和UI显示逻辑;
  • 52)实现大文件收到消息时,文件的下载(支持断点下载)处理逻辑;
  • 53)实现点击大文件消息时的文件查看界面(含下载、暂停下载、继续下载等功能);
  • 54)实现大文件发出的消息时,点击关联查看文件的界面;
  • 55)实现启用系统intent打开指定文件的功能;
  • 56)当文件名很短时,消息气泡中的文件图标会向左缩进(收到的消息时);
  • 57)[bug]解决了文件上传或续传检查时,文件的上传进度会首先默认显示为100%的问题;
  • 58)[优化]重新设计了大文件下载管理器:
  •      * ok 一次只允许下载一个文件;
  •      * ok 退出下载界面时可在后台静默下载,回到下载界面时能继续显示下载进度等;
  •      * ok 解决了较大文件在后台下载时,APP卡顿的问题;
  • 59)[优化]解决了当文件较大时(比如超过100M),选中文件确认发送时会卡住一会的问题;
  • 60)[优化]解决了发送文件时,当从文件选择界面通过back键返回,会提示”无效的文件路径...“问题;
  • 61)暂停下载后,再进文件下载界面时进度条显示不对的问题;
  • --
  • 62)[bug]解决了删除群成员时,群主可以把自已给删除的问题;
  • 63)[bug]解决了群主首次编辑群公告后,未退出app的情况下查看公告时不显示公告编辑人等信息的问题;
  • 64)优化了“查看群成员”界面,增加了“群主”标签、“我”标签的显示,提升用户体验;
  • 66)[Android端]优化了在某些Android7.0机型上因Context.MODE_WORLD_WRITEABLE参数被消而导致的SharedPreferences读取失败的问题;
  • --
  • 67)[优化][Android端]进一步优化了首页“消息”上的时间显示,使之更人性能、更友好;
  • 69)[bug]解决了客户端“同意”加好友请求后,首次加好后的好友在线状态都无条件是“在线”的问题;
  • 70)[优化]陌生人聊天界面、好友聊天界面中增加了未读消息气泡的功能;
  • 71)[优化]优化了陌生人聊天、好友聊天、世界频道、群聊 4种界面里的自动滚动到最后一行的逻辑,现在现人性化;
  • 72)[优化]重构了ArraListObserverble里的观察者机制,现在一个数据模型可同时添加0到N个观察者;
  • 73)[bug]解决了首页“消息”中删除与某人或某群的聊天item后,内存中的消息缓存没有被清除的问题;
  • 74)[优化]解决了Notification中setLatestEventInfo方法在Android6.0以下和以上版本中的兼容性问题;
  • 75)[优化]陌生人聊天界面上部提示信息上,添加了“加为好友”按钮;
  • 76)[优化]好友列表中删除好友时,也将同时删除首页“消息”上的item(及对应的聊天历史);
  • 77)[优化]解决了删除好友后聊天时,嵩谑滓场跋ⅰ鄙贤背鱿钟氪巳说暮糜押湍吧说牧礁鰅tem的问题;
  • 78)[优化]优化了好友列表里的部分图标、和此界面上部“我的信息”的UI;
  • 79)[优化]优化了“查找好友”无结果时的UI提示信息显示;
  • 80)[bug]解决了某些较老机型上因android系统定义的目录有变化而导至无法成功下载文件的问题;
  • 81)[bug]解决了较老手机上不能暂停正在下载中的文件的问题;
  • 82)[bug]解决了已下载完成的文件,点击打开按钮时还会触发下载请求的问题;
  • --
  • 83)[优化]将MobileIMSDK库升级到了v3.4b180717:解决在某些奇葩机型上出现handler在thread内报错的问题;
  • 84)[新增]新增注册HTTP服务器登陆http rest接口,及调用逻辑;
  • 85)[bug]解决了某些情况下会在首页“消息”界面同时出现好友聊天、陌生人聊天的item;
  • --
  • 86)[bug]解决了某些高版本Android机上,播放语音消息时前几百毫秒无声音的问题;

(2)服务端主要更新内容:
  • 1)[服务端]重构整个服务端:减少继承层级、降低代码复杂度,,使额不错务端工程更易于研究、学习和2次开发;
  • 2)[服务端]底层IM通信框架升级到了MobileIMSDK v3.3版;
  • 3)[优化]实现了加好友请求、拒绝好友请求、同意好友请求的iOS设备APNs离线消息推送机制;
  • 4)[优化]实现了所有群聊聊天消息、系统通知的iOS设备APNs离线消息推送机制;
  • 5)[优化]实现了所有陌生人聊天、好友聊天的iOS设备APNs离线消息推送机制;
  • 6)[优化]解决了当对方已把“我”从好友列表删除的情况下,“我”再发起删除会在客户端出现服务端异常信息的问题;
  • 7)[服务端]解决了离线消息乱序的问题。

三、标准版,当前版本:v4.4,最近更新:20190122


v4.4b190122更新日志(首次发布于:2018/11/25)


  • 1)[Android]升级Android客户端工程并迁移至Andriod Studio;
  • 2)[Android]重构整个工程:降低子工程依赖、删减不必要的代码,使客户端工程更易于研究、学习和2次开发;
  • 3)[服务端]重构整个服务端:减少继承层级、降低代码复杂度,,使额不错务端工程更易于研究、学习和2次开发;
  • 4)[android、ios、服务端]优化陌生人聊天消息体对象TempChatMsgDTO中多余的字段;
  • 5)[android、服务端]全面重构聊天消息IM协议的body数据结构,使之规范化、易扩展和易理解(见MsgBody4Root);
  • 6)[android]解决了陌生人聊天时,只要陌生人聊天界面处于打开状态,其他陌生人发送的消息不自动累计未读数;
  • 7)将原世界频道的所有数据模型、界面逻辑作为一个特殊的群聊类型合并到普通群聊中,大大降低代码冗余、简化理解;
  • 8)升级到RainbowAV_v2.1b180420修改VCCarmera.java,尝试解决绿屏问题;
  • 9)整理优化Android客户端、服务端无意义的代码,并修订一些代码注释使之更有意义;
  • --------
  • 10)实现了首页“消息”界面中item的置顶或取消置顶功能;
  • 11)实现了首页“消息”界面中item的设置已读或设置未读功能;
  • 12)全面重构了首页”消息“、一对一/陌生人/群组聊天中的所有指令和消息时间字段(改为时间戳),实现UI显示时的时区自适应;
  • 13)实现了首页“消息”界面中,长按弹出仿微信的浮动菜单功能(用于解决系统默认菜单在不同厂商手机上的UI兼容问题);
  • 14)解决了“个人中心”,个人相册和语音介绍文字后的“new”图标,在字体变化时会盖住前面的文字的问题;
  • 15)实现图片查界面中,将图片保存到系统相册的功能;
  • 16)[服务端]上传用户头像时,将同时生成一个头像的缩略图;
  • 17)网络连接断开的情况下,发送消息时应显示友好中文,而不是显示code等英文;
  • 18)重构了http、im实用类的包位置,以及所有的消息发送实用类中的异步发送方法等;
  • --------
  • 19)优化陌生人聊天消息体对象TempChatMsgDTO中多余的字段;
  • 20)全面重构聊天消息IM协议的body数据结构,使之规范化、易扩展和易理解(见MsgBody4Root);
  • --------
  • 21)[服务端]底层IM通信框架升级到了MobileIMSDK v3.3版;
  • 22)[Android端]优化了在某些Android7.0机型上因Context.MODE_WORLD_WRITEABLE参数被消而导致的SharedPreferences读取失败的问题;
  • --------
  • 23)[优化][Android端]进一步优化了首页“消息”上的时间显示,使之更人性能、更友好;
  • 24)[bug][服务端]解决了客户端“同意”加好友请求后,首次加好后的好友在线状态都无条件是“在线”的问题;
  • 25)[优化][Android端]陌生人聊天界面、好友聊天界面中增加了未读消息气泡的功能;
  • 26)[优化][Android端]优化了陌生人聊天、好友聊天、世界频道3种界面里的自动滚动到最后一行的逻辑,现在现人性化;
  • 27)[优化][Android端]重构了ArraListObserverble里的观察者机制,现在一个数据模型可同时添加0到N个观察者;
  • 28)[bug][Android端]解决了首页“消息”中删除与某人或某群的聊天item后,内存中的消息缓存没有被清除的问题;
  • 29)[优化][Android端]解决了Notification中setLatestEventInfo方法在Android6.0以下和以上版本中的兼容性问题;
  • 30)[优化][Android端]陌生人聊天界面上部提示信息上,添加了“加为好友”按钮;
  • 31)[优化][Android端]好友列表中删除好友时,也将同时删除首页“消息”上的item(及对应的聊天历史);
  • 32)[优化][Android端]解决了删除好友后聊天时,会在首页“消息”上同时出现与此人的好友和陌生人的两个item的问题;
  • 33)[优化][Android端]优化了好友列表里的部分图标、和此界面上部“我的信息”的UI;
  • 34)[优化][Android端]优化了“查找好友”无结果时的UI提示信息显示;
  • --------
  • 35)[优化][Android端]将MobileIMSDK库升级到了v3.4:解决在某些奇葩机型上出现handler在thread内报错的问题;
  • 36)[新增][android、ios、服务端]新增注销HTTP服务器登陆http rest接口,及调用逻辑;
  • 37)[优化][ios、服务端]实现了加好友请求、拒绝好友请求、同意好友请求的iOS设备APNs离线消息推送机制;
  • 38)[优化][ios、服务端]实现了所有陌生人聊天、好友聊天的iOS设备APNs离线消息推送机制;
  • 39)[优化][服务端]解决了当对方已把“我”从好友列表删除的情况下,“我”再发起删除会在客户端出现服务端异常信息的问题;
  • 40)[bug]解决了某些情况下会在首页“消息”界面同时出现好友聊天、陌生人聊天的item;
  • --------
  • 41)[bug]解决了某些高版本Android机上,播放语音消息时前几百毫秒无声音的问题;
  • 42)[Android端]解决了一方切换账号后,实时音视频只能单向接通的问题;
  • 43)[Android端]优化了聊天界面中的消息气泡显示,当为电话、网址、邮箱等内容时,自动加上超链接;
  • 44)[Android端][优化]实现了所有聊天界面中的长按消息气泡复制文本消息的功能;
  • 45)[Android端][优化]实现了所有聊天界面中的发送失败消息的重发功能;
  • 46)[Android端][优化]它来级MobileIMSDK至v3.3.1b181124版,取消了MobileIMSDK v3.1中使用的本地固定监听端口7801,并恢复为最初的设计(即端口号0),以便解决某些机型上的端口端用问题;
  • 47)[服务端][优化]优化安全性:防止SQL注入攻击。

v4.3更新日志(发布于:未公开发布)



v4.2更新日志


  • 1)[服务端]优化了服务端邮件发送能力,使得支持SSL的邮箱服务(阿里云已全面禁用25端口的非SSL邮件发送);
  • 2)[服务端]优化了base_conf.properties配置文件在Linux下读取路径的代码;
  • 3)[服务端]优化了“忘记密码”邮件的发送为异步方式,提升客户端接口调用体验;
  • 4)[服务端]优化了“邀请”邮件的发送为异步方式,提升客户端接口调用体验
  • 5)[Android、服务端]优化了离线加好友请求的时间显示为添加发起时间,而非总显示为当前时间;
  • 6)[Android]删除了好友验证通知列表中的长按弹出菜单功能及代码,因为无意义;
  • 7)[Android]优化了首页显示离线好友请求时的时间不是发出请求时的时间问题;
  • 8)[Android、服务端]将即时通讯核心库升级至MobileIMSDK v3.2版
  • 9)[Android][bug]在处理好友请求时点“同意”后,首页上的未处理好友请求数会多-1(即共去了2)的问题
  • 10)[Android][优化]进入未处理好友请求列表时,将强制刷新同步首页的未处理好友请求数,更好保地证未处理好友请求数的一致性;
  • 11)[服务端]让Android、iOS客户端支持标准Emoji表情的发送、存储和显示
  • 12)[Android]实现了“退出登陆”(切换账号重新登陆)功能,并重构/优化了MyApplication、LoginActivity、AlarmsActivity等类代码,重新整理了退出登陆
  • 逻辑及代码使之更优雅合理;
  • 14)[Android]主要界面的UI、图标等优化(扁平化)
  • 15)[Android][bug]解决了聊天界面中图片消息在Android6.0及以上时预览图很小的问题
  • 16)[Android]一对一正式聊天界面中添加了更多功能按钮及其交互方式(跟微信、米聊、易信等的体验保持一致);
  • 17)[Android]一对一陌生人聊天界中添加了更多功能按钮及其交互方式(跟微信、米聊、易信等的体验保持一致);
  • 18)[Android]世界频聊天界中添加了更多功能按钮及其交互方式(跟微信、米聊、易信等的体验保持一致);
  • 19)[Android][bug]解决一对一聊天界面在Android高版本手机(如红米5 android 7.0)时,发送拍照图片后,消息列表不自动滚动到最后的莫名问题;
  • 20)[Android][bug]解决一对一聊天界面中,发送礼物如积分不够点击无反应的问题;
  • 21)[Android]将音视频框架RainbowAV升级至v2.1版(解决高版本Android上某些机型的花屏、native库提示问题)

v4.0更新日志(发布于:2017/09/04)


  • 1)完成RainbowChat的服务端升级到MobileIMSDK v3版;
  • 2)晚已解决不能触发onTransfer回调的问题;
  • 3)优化了login界面中userid和logintoken的定义和使用,使之符合MobileIMSDK v3的设计;
  • 4)完成RainbowChat的Android客户端升级到MobileIMSDK v3版;
  • 5)关闭桥接通信模块,防止好友不在线时无法离线存储;
  • 6)根据MobileIMSDK v3版的typeu字段,重新优化了RainbowChat中的所有协议头;
  • 7)全面重构了im协议相关的常量、协议、格式等,为iOS及其它跨平台客户端做准备;
  • 8)编写完成了im协议字典;
  • 9)完成了RainbowChat中的跨客户端通用rest框架的调试(所有接口将支持iOS、Web等等客户端调用);
  • 10)搞定了所有的通用http rest接口代码的优化和文档编写;
  • 11)完成RainbowChat v4.0所有接口的通用rest化,并完成全面优化、测试和验证:
      * ok-登陆接口;
      * ok-版本检查接口;
      * ok-删除好友接口;
      * ok-用户注册接口;
      * ok-用户基本信息修改接口;
      * ok-用户登陆密码修改接口;
      * ok-用户签名信息修改接口;
      * ok-用户其它说明修改接口;
      * ok-获取用户好友列表接口;
      * ok-发送邀请朋友邮件接口;
      * ok-LOGIC_SNS中的获取用户/好友的个人信息接口;
      * ok-“忘记密码”接口;
      * ok-获取“随机查找好友”结果的接口;
      * ok-获取离线好友请求的接口;
      * ok-获取离线聊天消息的接口。
  • 12)完成了Android客户端的头像上传接口切换到通用http rest的方式(okhttp3实现);
  • 13)完成了服务端的头像上传接口切换到通用http rest的方式;
  • 14)完成了文件上传系列接口的通用rest化,并优化、整理了实现代码:
      * ok-用户头像上传接口;
      * ok-图片聊天消息的图片文件上传接口;
      * ok-语音留言聊天消息的音频文件上传接口;
      * ok-个人照片文件上传接口;
      * ok-个人语音介绍的语音文件上传接口;
      * ok-用户头像下载接口;
      * ok-图片消息的图片文件下载接口;
      * ok-语音留言消息的音频文件下载接口;
      * ok-个人照片图片文件下载接口;
      * ok-个人介绍的语音文件下载接口。
  • 15)解决了个人信息中的照片和语音留言时,当删除的是最后一个文件返回到列表界面时不能即时刷新UI显示内容为空的bug;
  • 16)优化个人信息中的照片和语音留言删除接口为通用http rest;
  • 16)新增了向某客户端推送消息或指令的通用http rest接口;
  • 17)新增了查询个人信息中的照片、语音数量的通用http rest接口;
  • 18)新增了查询个人信息中的照片、语音数据完整列表的通用http rest接口;
  • 19)新增了查询个人信息中的最新照片预览列表的通用http rest接口。
  • 20)解决了服务端删除好友时可能只删除2条好友记录中的一条的Bug(应改为严格按照事务的方式处理);
  • 21)解决了好加友请求在已是好友的情况下,不提交服务端处理已经存在历史请求,而导致该请求一直存在DB中的问题;
  • 22)完成了礼品收发系列通用http rest接口的优化、整理:
      * ok-【接口1012-21-7】用户积分查询接口;
      * ok-【接口1012-21-8】处理某人向另一人赠送礼品数据的接口;
      * ok-【接口1012-21-9】用户所有礼品兑换成积分的接口;
      * ok-【接口1012-21-22】查询用户的指定礼品获赠记录的接口;
      * ok-【接口1012-21-23】查询用户礼物列表的接口;
      * ok-【接口1012-21-24】查询当前系统设定的礼物列表的接口。
  • 23)完成了RainbowChat所依赖的eva_android客户端框架程和jar包的整理;
  • 24)解决了Android客户端新用户首次登陆上传头像后,在修改性别成功后刷新界面数据时UI上会用默认图标替换刚上传的头像的bug(原因是本地上传成功后没有将头像文件名更新到本地用户信息对象上);
  • 25)升级RainbowChat服务端,使得持久化数据可支持SQL Server和MySQL两种数据库:
      * 解决了随机查询好友时,客户关传过来的在线条件和性能条件搞混的问题。
  • 26)解决了Android4.4及以上版本时实时音视频界面中不能显示本地视频预览;
  • 27)升级RainbowChat客户端的实时音视子系统RainbowAV至v2.0版。

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

上一篇:RainbowChat 技术授权说明、授权协议书范本下一篇:RainbowChat开发资料:客户端如何实现收到聊天消息到界面显示的?(针对iOS、Android)
推荐方案
评论 19
rest服务是一种趋势。这样前后端开发更加解耦。个人是这样理解的。这个产品级的东西还是很好的。真的很小巧 服务端很小。对与做大型的东西很好的重构和服用。功能很ok。值得学习和产品的直接使用
签名: 好久不来了 现在不忙了 好好学习
引用:奶瓶 发表于 2017-11-17 16:45
rest服务是一种趋势。这样前后端开发更加解耦。个人是这样理解的。这个产品级的东西还是很好的。真的很小巧 ...

感谢评价
v7.2版已经发布。
v8.0版已经发布。
v8.1版已经发布。
v8.2版已经发布。
v8.3版已经发布。
v8.4版已经发布。
v9.0版已经发布。
最新动态:已发布RainbowChat[专业版] iOSv7.0适配最新iOS系统及bug解决和优化App Store安装地址版本更新日志更多运行截图)。
v10.0版已经发布。
最新动态:已发布RainbowChat[专业版] iOSv8.0新增群名片、消息转发功能等App Store安装地址版本更新日志更多运行截图)。
v10.0版已经发布。
最新动态:已发布RainbowChat[专业版] iOSv9.0新“@”功能、消息引用功能等App Store安装地址更多版本更新日志更多运行截图)。
v11.5版已经发布。
v11.6版已经发布。
RainbowChat v11.7版 已发布!
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部