React-Native IM SDK 更新日志
大约 8 分钟
React-Native IM SDK 更新日志
版本 V1.2.1 2023-8-16
修复
- 移除创建消息对象的参数 
secret。该参数由服务器生成,在发送消息成功之后会获取到。 
版本 V1.2.0 2023-8-16
新增特性
- React-Native 从 0.66.5 升级到 0.71.11。
 - 依赖的原生 SDK(iOS 和 Android)升级到版本 4.1.1。添加原生 SDK 提供的新功能。
 - 新增 
ChatManager.fetchConversationsFromServerWithCursor方法从服务器分页获取会话列表。 - 新增置顶服务器会话的功能: 
- 新增 
ChatManager.pinConversation方法,实现置顶或取消置顶服务器会话; - 新增 
ChatManager.fetchPinnedConversationsFromServerWithCursor从服务器分页获取置顶会话列表。 
 - 新增 
 - 新增 
ChatManager.modifyMessageBody方法,用于修改本地消息或服务器端消息。 - 新增消息合并转发功能: 
- 新增 
ChatMessage.createCombineMessage方法构建合并消息。 - 新增 
ChatManager.fetchCombineMessageDetail方法获取合并消息的信息。 
 - 新增 
 - 新增自定义登录设备的名称和平台的功能。
 - 新增 
ChatPushManager.selectPushTemplate方法基于自定义推送模板进行离线推送。 - 新增 
ChatPushManager.fetchSelectedPushTemplate获取选定的推送模板以进行离线推送。 - 在 
ChatClient.getLoggedInDevicesFromServer方法中添加 token 参数可使用用户 token 获取在线设备列表。 - 在 
ChatClient.kickDevice和ChatClient.kickAllDevices方法中添加 token 参数可使用用户 token 将指定用户的某个或全部的登录设备踢下线。 - 更新监听器: 
ChatEvents.ChatConnectEventListener.onUserDidLoginFromOtherDevice:添加deviceName参数。ChatEvents.ChatConnectEventListener:添加onUserDidRemoveFromServer、onUserDidForbidByServer、onUserDidChangePassword、onUserDidLoginTooManyDevice、onUserKickedByOtherDevice和onUserAuthenticationFailed事件通知。ChatEvents.ChatConnectEventListener.onDisconnected:删除代码参数。ChatEvents.ChatMultiDeviceEventListener:添加onMessageRemoved事件。ChatEvents.ChatMultiDeviceEventListener:添加onConversationEvent事件。ChatEvents.ChatMessageEventListener:添加onMessageContentChanged事件。ChatRoomEventListener.onRemoved:添加reason参数。
 - 更新以下数据对象: 
ChatConversation:添加isPinned和pinnedTime属性。ChatMessage.ChatMessageType:添加COMBINE类型消息正文。ChatMessage:添加receiverList属性。- 创建发送消息:添加 
secret参数。 ChatMessage.ChatMessageBody:添加lastModifyOperatorId、lastModifyTime和modifyCount属性。ChatOptions:添加enableEmptyConversation、customDeviceName和customOSType属性。ChatEvents.ChatMultiDeviceEvent:添加CONVERSATION_PINNED、CONVERSATION_UNPINNED和CONVERSATION_DELETED事件。
 - 添加数据对象: 
ChatMessage.ChatCombineMessageBody:添加组合消息正文对象。 
优化
- 优化断线通知,分离出服务器主动断线的通知,用户可以具体处理服务器主动断线的原因。
 - 使用 commitlint 优化 git 提交规范,确保提交的代码符合规范。
 - 使用 lefthook 优化 git commit。添加使用 gitleaks 检查敏感信息。
 - 在 
ChatManager对象中,deleteAllMessages重命名为deleteConversationAllMessages。 - 在 
ChatEvents.ChatRoomEventListener对象中,onRemoved重命名为onMemberRemoved。 - 在 
ChatEvents.ChatGroupEventListener对象中,onUserRemoved重命名为onMemberRemoved。 - 在 
ChatEvents.ChatRoomEventListener对象中,onChatRoomDestroyed重命名为onDestroyed。 - 在 
ChatEvents.ChatGroupEventListener对象中,onGroupDestroyed重命名为onDestroyed。 - 弃用 
ChatManager.fetchAllConversations,改用ChatManager.fetchConversationsFromServerWithCursor。 
修复
修复 Android 平台下由于添加表情响应导致应用程序崩溃的问题。
版本 V1.1.2 2023-6-28
新增特性
- 原生平台 Android 和 iOS 的 SDK 升级到 v4.0.2。
 - 新增 
ChatClient.version属性用于获取当前 SDK 的版本号。 - 新增 
ChatGroupManager.setMemberAttribute方法用于设置单个群组成员的属性。 - 新增 
ChatGroupManager.fetchMemberAttributes方法用于从服务器获取单个群成员的所有自定义属性以及根据属性 key 获取多个群成员的自定义属性。 - 添加 
ChatManager.fetchHistoryMessagesByOptions根据消息拉取参数配置类(ChatFetchMessageOptions)从服务器分页获取指定会话的历史消息。ChatFetchMessageOptions类中包括起始时间戳、消息类型和消息发送方等参数。 - 新增 
ChatManager.deleteMessagesWithTimestamp方法实现删除指定时间段内的本地消息。 - 新增 
ChatGroupEventListener.onMemberAttributesChanged事件,在单个群成员的属性发生变更时,群内其他成员会收到该事件。 - 新增 
ChatConnectEventListener.onAppActiveNumberReachLimit事件,在应用程序的日活跃用户数量(DAU)或月活跃用户数量(MAU)达到上限时触发该事件。 - 新增日志回调接口 
handler。 
优化
- 删除敏感信息。
 - 优化 
ChatManager.fetchHistoryMessages方法,更新接口声明。 - 优化 iOS 文件类型的消息,当发送消息时本地路径带有 
file://时发送成功。 
修复
- 修复更新 token 方法 
renewAgoraToken中的问题。 - 修复 Android 平台发送视频消息失败的问题。
 
版本 V1.1.1 2023-3-8
修复
修复调用 ChatGroupManager#fetchJoinedGroupsFromServer 方法时获取加入的公开群的扩展属性为空的问题。
版本 V1.1.0 2023-2-24
新增特性
- 依赖的原生平台 
iOS和Android的 SDK 升级为 v4.0.0 版本。 - 新增 
ChatManager#fetchConversationsFromServerWithPage方法实现从服务器分页获取会话列表。 - 新增 
ChatMessage#messagePriority方法实现聊天室消息优先级功能,确保高优先级消息优先处理。 
优化
- 移除测试数据的敏感信息。
 ChatGroupManager类中的方法inviterUser重命名为inviteUser。ChatMultiDeviceEvent枚举类型GROUP_ADD_USER_WHITE_LIST重命名为GROUP_ADD_USER_ALLOW_LIST。ChatMultiDeviceEvent枚举类型GROUP_REMOVE_USER_WHITE_LIST重命名为GROUP_REMOVE_USER_ALLOW_LIST。
修复
- 修复原生平台部分不安全代码。
 - 修复获取会话可能失败的问题。
 - 修复回调方法可能多次进入主线程导致死锁的问题。该问题只可能发生在 iOS 平台。
 
版本 V1.0.11 Dev 2022-12-12
优化
依赖的 iOS 和 Android SDK 升级为 3.9.9 版本。
修复
- 修复极端情况下 SDK 崩溃的问题。
 - 修复某些场景下调用 
updateMessage方法导致的内存与数据库中的消息不一致问题。 - 适配 Android 12,修复依赖环信即时通讯云 SDK 的 APK 在 Android 12 版本的部分手机上第一次安装后打开时出现异常弹框的问题。
 
版本 V1.0.10 Dev 2022-10-13
修复
修复 Android 平台进行 JSON 转换可能出现的超限问题。该问题影响返回数组类型数据的接口,若此类接口返回的数据元素超过 50 个,则可能抛出异常。
版本 V1.0.9 Dev 2022-10-08
新增特性
ChatGroupEventListener 中新增两个事件:
onDetailChanged:群组详情变更事件。onStateChanged:群组禁用状态变更事件。
修复
修复聊天室自定义属性问题。
版本 V1.0.8 Dev 2022-09-30
新增特性
- 新增聊天室自定义属性功能。
 - 在 
ChatOptions类中新增areaCode参数限制连接边缘节点的范围。 ChatGroupOptions中增加isDisabled属性显示群组禁用状态,需要开发者在服务端设置。该属性在调用ChatGroupManager中的fetchGroupInfoFromServer方法获取群组详情时返回。
修复
- 修复极少数场景下,从服务器获取较大数量的消息时失败的问题。
 - 修复数据统计不正确的问题。
 - 修复极少数场景下打印日志导致的崩溃。
 
版本 V1.0.7 2022-09-07
兼容性变更
unSubscribe 方法重命名为 unsubscribe。
新增特性
- 新增 
setConversationExtension方法用于设置会话扩展。 - 新增 
insertMessage方法插入消息。 - 新增 
deleteMessagesBeforeTimestamp方法删除指定时间戳之前的消息。 - 新增 
getThreadConversation方法获取或创建子区会话。 ChatConversation类中添加isChatThread属性确认会话是否为子区会话。- 新增 
ChatPushManager类支持推送通知设置。 - 新增 
ChatPushConfig类支持 FCM 推送配置。 - 在 
ChatOptions类中新增pushConfig方法支持推送初始化设置。 - 在 
ChatClient类中新增updatePushConfig方法支持推送配置更新。 
优化
- 依赖的原生的 SDK(iOS 和 Android)升级到 V1.0.7。
 - 监听方法调整为可选。
 - 更新发布脚本。
 - 更新 demo。
 
问题修复
修复相关方法中的 type 字段的 JSON 解析错误。
版本 V1.0.6 2022-7-22
兼容性变更
- 以下方法进行了重命名:
 
deleteRemoteConversation方法重命名为removeConversationFromServer。loadAllConversations方法重命名为getAllConversations。getConversationsFromServer方法重命名为fetchAllConversations。getUnreadMessageCount方法重命名为getUnreadCount。fetchLatestMessage方法重命名为getLatestMessage。fetchLastReceivedMessage方法重命名为getLatestReceivedMessage。unreadCount方法重命名为getConversationUnreadCount。getMessagesFromTime方法重命名为getMessageWithTimestamp。- 白名单和黑名单相关的方法名进行了重命名: 
- 白名单相关的方法名中的 
WhiteList修改为AllowList,如getGroupWhiteListFromServer修改为getGroupAllowListFromServer; - 黑名单相关的方法名中的 
BlackList修改为BlockList,如getGroupBlackListFromServer修改为getGroupBlockListFromServer。 
 - 白名单相关的方法名中的 
 
- 删除了以下方法:
 
getMessageByIdinsertMessageappendMessage
新增特性
消息中新增 isOnline 字段。
优化
- 更新了接口示例应用。
 - 依赖的 SDK(Android 和 iOS)升级至 V3.9.4。
 - React-Native 升级至 0.66.4 LTS 版本。
 - Android 平台无需再执行其他操作。
 agora-react-native-chat重命名为react-native-agora-chat。
修复
类型声明切入点不正确。
版本 V1.0.5 2022-6-21
这是 React Native SDK 第一个正式发布的版本,包含以下功能:
- 在单聊、群聊、聊天室和子区中发送和接收消息;
 - 管理会话和消息;
 - 管理群组和聊天室;
 - 用户在线状态订阅;
 - 消息表情回复;
 - 管理子区等。
 
具体集成请参考以下文档:
