Skip to content

Commit

Permalink
Merge pull request #967 from haoxiuwen/sdkrelease
Browse files Browse the repository at this point in the history
Add Android/iOS 4.10.0 Release Notes
  • Loading branch information
haoxiuwen authored Sep 30, 2024
2 parents b5081c4 + 4070aa6 commit a8be834
Show file tree
Hide file tree
Showing 12 changed files with 79 additions and 14 deletions.
4 changes: 2 additions & 2 deletions docs/document/android/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

### 单向删除服务端会话及其历史消息

你可以调用 `deleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `deleteConversationFromServer` 方法删除服务器端和本地会话,并选择是否删除服务端和本地的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。该接口不影响其他用户的会话和消息。

调用该方法之前,需调用 `getConversation` 方法获取会话 ID。

Expand All @@ -32,7 +32,7 @@
//获取指定的会话 ID。
EMConversation conversation = EMClient.getInstance().chatManager().getConversation(conversationId);

// 删除指定会话。如果需要保留服务端的历史消息,`isDeleteServerMessages` 传 `false`。
// 删除指定会话。如果需要保留服务端和本地的历史消息,`isDeleteServerMessages` 传 `false`。
EMClient.getInstance().chatManager().deleteConversationFromServer(conversationId, conversationType, isDeleteServerMessages, new EMCallBack() {
@Override
public void onSuccess() {
Expand Down
2 changes: 2 additions & 0 deletions docs/document/android/error.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,13 +87,15 @@ Android 中错误码的类为 `EMError`。
| 610 | GROUP_MEMBER_ATTRIBUTES_UPDATE_FAILED | 设置群成员自定义属性失败。 |
| 611 | GROUP_MEMBER_ATTRIBUTES_KEY_REACH_LIMIT | 设置的群成员自定义属性 key 长度(不能超过 16 字节)超限。 |
| 612 | GROUP_MEMBER_ATTRIBUTES_VALUE_REACH_LIMIT | 设置的群成员自定义属性 value 长度(不能超过 512 字节)超限。 |
| 613 | GROUP_USER_IN_BLOCKLIST | 该用户在群组黑名单中。群组黑名单中的用户进行某些操作时,例如,加入群组,会提示该错误。 |
| 700 | CHATROOM_INVALID_ID | 聊天室 ID 无效:调用聊天室相关 API,传入的聊天室 ID 为空时提示该错误。 |
| 701 | CHATROOM_ALREADY_JOINED | 已在该聊天室中:调用加入聊天室的 API 时如果已经在该聊天室中则提示该错误。 |
| 702 | CHATROOM_NOT_JOINED | 未加入该聊天室:用户在未加入的聊天室中发送消息或进行聊天室操作时提示该错误。 |
| 703 | CHATROOM_PERMISSION_DENIED | 无权限的聊天室操作:例如,聊天室普通成员没有权限设置聊天室管理员。 |
| 704 | CHATROOM_MEMBERS_FULL | 聊天室已满:聊天室成员数量已达到创建聊天室时设置的最大人数。 |
| 705 | CHATROOM_NOT_EXIST | 聊天室不存在:尝试对不存在的聊天室进行操作时提示该错误。 |
| 706 | CHATROOM_OWNER_NOT_ALLOW_LEAVE | 聊天室所有者不允许离开聊天室。若初始化时,`EMOptions#allowChatroomOwnerLeave` 参数设置为 `false`,聊天室所有者调用 `leaveChatRoom` 方法离开聊天室时会提示该错误。 |
| 707 | CHATROOM_USER_IN_BLOCKLIST | 该用户在聊天室黑名单中。聊天室黑名单中的用户进行某些操作时,例如,加入聊天室,会提示该错误。 |
| 900 | USERINFO_USERCOUNT_EXCEED | 获取用户属性的用户个数超过 100。 |
| 901 | USERINFO_DATALENGTH_EXCEED | 设置的用户属性太长。单个用户的所有属性数据不能超过 2 KB,单个 app 所有用户属性数据不能超过 10 GB。 |
| 1000 | CONTACT_ADD_FAILED | 添加联系人失败。 |
Expand Down
35 changes: 35 additions & 0 deletions docs/document/android/releasenote.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,41 @@

<Toc />

## 版本 V4.10.0 Dev 2024-09-30(开发版)

### 新增特性

- [IM SDK] 新增 `EMChatManager#asyncGetMessageCount` 方法,用于获取数据库中的消息总数。
- [IM SDK] 新增[两个错误码](error.html)
- `EMError#GROUP_USER_IN_BLOCKLIST`(613):该用户在群组黑名单中。群组黑名单中的用户进行某些操作时,例如,加入群组,会提示该错误。
- `EMError#CHATROOM_USER_IN_BLOCKLIST`(707):该用户在聊天室黑名单中。聊天室黑名单中的用户进行某些操作时,例如,加入聊天室,会提示该错误。

### 优化

- [IM SDK] [发送前回调](/document/server-side/callback.html#_1、发送前回调)时修改的[消息扩展字段](/document/android/message_send_receive.html#使用消息扩展字段),会同步到发送方。
- [IM SDK] 调用[删除服务端会话 API](conversation_delete.html#单向删除服务端会话及其历史消息),成功后会删除本地会话。对于之前版本,可设置调用该接口删除会话的本地消息,但该接口不删除本地会话。
- [IM SDK] 适配 Android 15 的 16K page size。
- [IM SDK] 群组和聊天室操作的默认错误码提示由 `GROUP_MEMBERS_FULL`(604)和 `CHATROOM_MEMBERS_FULL`(704)调整为 `GROUP_PERMISSION_DENIED`(603)和 `CHATROOM_PERMISSION_DENIED`(703)。例如,群组普通成员设置群组管理员时,由于缺乏权限,会提示 603 错误。
- [IM SDK] 底层长连接使用 poll 代替 select,解决文件描述符(fd)最大数量 1024 的限制问题。

### 修复

- [IM SDK] 修复发送图片消息时指定缩略图尺寸未生效的问题。
- [IM SDK] 修复未拉取好友时收到好友事件,导致好友列表不能更新的问题。

### [单群聊 UIKit](/uikit/chatuikit/android/chatuikit_overview.html)

- 修复发送方发送的部分表情与接收方收到的不匹配的问题。

### [EaseCallKIt](easecallkit.html)

- 修复部分手机在拨号时,切换到悬浮窗口后再返回时,通话状态显示错误的问题。
- 修复切换悬浮窗时,悬浮窗闪烁一次的问题.

### [EaseIM App (Demo)](https://github.com/easemob/easemob-demo-android)

- 增加隐私协议时间声明。

## 版本 V4.9.0 Dev 2024-08-30(开发版)

### 新增特性
Expand Down
4 changes: 2 additions & 2 deletions docs/document/flutter/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@

### 单向删除服务端会话及其历史消息

你可以调用 `deleteRemoteConversation` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `deleteRemoteConversation` 方法删除服务器端会话,并选择是否删除服务端和本地的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口不会删除本地会话。该接口不影响其他用户的会话和消息。

```dart
// 会话 ID。
String conversationId = "conversationId";
// 删除会话时是否同时删除服务端的历史消息
// 删除会话时是否同时删除服务端和本地的历史消息
bool deleteMessage = true;
EMConversationType conversationType = EMConversationType.Chat;
await EMClient.getInstance.chatManager.deleteRemoteConversation(
Expand Down
4 changes: 2 additions & 2 deletions docs/document/harmonyos/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

### 单向删除服务端会话及其历史消息

你可以调用 `deleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `deleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端和本地的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口不会删除本地会话。该接口不影响其他用户的会话和消息。

调用该方法之前,需调用 `getConversation` 方法获取会话 ID。

Expand All @@ -32,7 +32,7 @@
//获取指定的会话 ID。
let conversation = ChatClient.getInstance().chatManager()?.getConversation(conversationId);

// 删除指定会话。如果需要保留服务端的历史消息,`isDeleteServerMessages` 传 `false`。
// 删除指定会话。如果需要保留服务端和本地的历史消息,`isDeleteServerMessages` 传 `false`。
ChatClient.getInstance().chatManager()?.deleteConversationFromServer(conversationId, conversationType, isDeleteServerMessages)
.then(()=> {
// success
Expand Down
4 changes: 2 additions & 2 deletions docs/document/ios/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@

### 单向删除服务端会话及其历史消息

你可以调用 `deleteServerConversation` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `deleteServerConversation` 方法删除服务器端和本地会话,并选择是否删除服务端和本地的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。该接口不影响其他用户的会话和消息。

```objectivec
// 删除指定会话,如果需要保留服务端的历史消息,`isDeleteServerMessages` 参数传 `NO`,异步方法。
// 删除指定会话,如果需要保留服务端和本地的历史消息,`isDeleteServerMessages` 参数传 `NO`,异步方法。
[[EMClient sharedClient].chatManager deleteServerConversation:@"conversationId1" conversationType:EMConversationTypeChat isDeleteServerMessages:YES completion:^(NSString *aConversationId, EMError *aError) {
// 删除回调
}];
Expand Down
2 changes: 2 additions & 0 deletions docs/document/ios/error.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,13 +89,15 @@ iOS 的错误码只有当操作出错的时候才会有返回值,否则返回
| 610 | EMErrorGroupMemberAttributesUpdateFailed | 设置群成员自定义属性失败。 |
| 611 | EMErrorGroupMemberAttributesKeyReachLimit | 设置的群成员自定义属性 key 长度(不能超过 16 字节)超限。 |
| 612 | EMErrorGroupMemberAttributesValueReachLimit | 设置的群成员自定义属性 value 长度(不能超过 512 字节)超限。 |
| 613 | EMErrorGroupUserInBlockList | 该用户在群组黑名单中。群组黑名单中的用户进行某些操作时,例如,加入群组,会提示该错误。 |
| 700 | EMErrorChatroomInvalidId | 聊天室 ID 无效:调用聊天室相关 API,传入的聊天室 ID 为空时提示该错误。 |
| 701 | EMErrorChatroomAlreadyJoined | 已在该聊天室中:调用加入聊天室的 API 时如果已经在该聊天室中则提示该错误。 |
| 702 | EMErrorChatroomNotJoined | 未加入该聊天室:用户在未加入的聊天室中发送消息或进行聊天室操作时提示该错误。 |
| 703 | EMErrorChatroomPermissionDenied | 无权限的聊天室操作:例如,聊天室普通成员没有权限设置聊天室管理员。 |
| 704 | EMErrorChatroomMembersFull | 聊天室已满:聊天室成员数量已达到创建聊天室时设置的最大人数。|
| 705 | EMErrorChatroomNotExist | 聊天室不存在:尝试对不存在的聊天室进行操作时提示该错误。 |
| 706 | EMErrorChatroomOwnerNotAllowLeave | 聊天室所有者不允许离开聊天室。若初始化时,`EMOptions#allowChatroomOwnerLeave` 参数设置为 `false`,聊天室所有者调用 `leaveChatroom` 方法离开聊天室时会提示该错误。 |
| 707 | EMErrorChatroomUserInBlockList | 该用户在聊天室黑名单中。聊天室黑名单中的用户进行某些操作时,例如,加入聊天室,会提示该错误。 |
| 900 | EMErrorUserCountExceed | 获取用户属性的用户个数超过 100。 |
| 901 | EMErrorUserInfoDataLengthExceed | 设置的用户属性太长。单个用户的所有属性数据不能超过 2 KB,单个 app 所有用户属性数据不能超过 10 GB。 |
| 1000 | EMErrorContactAddFailed | 添加联系人失败。 |
Expand Down
24 changes: 24 additions & 0 deletions docs/document/ios/releasenote.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,30 @@

<Toc />

## 版本 V4.10.0 Dev 2024-09-30(开发版)

### 新增特性

- [IM SDK] 新增 `EMChatManager#getMessageCountWithCompletion:` 方法,用于获取数据库中的消息总数。
- [IM SDK] 新增[两个错误码](error.html)
- `EMErrorGroupUserInBlockList`(613):该用户在群组黑名单中。例如,群组黑名单中的用户进行某些操作时,例如,加入群组,会提示该错误。
- `EMErrorChatroomUserInBlockList`(707):该用户在聊天室黑名单中。聊天室黑名单中的用户进行某些操作时,例如,加入聊天室,会提示该错误。

### 优化

- [IM SDK] [发送前回调](/document/server-side/callback.html#_1、发送前回调)时修改的[消息扩展字段](/document/android/message_send_receive.html#使用消息扩展字段),会同步到发送方。
- [IM SDK] 调用[删除服务端会话 API](conversation_delete.html#单向删除服务端会话及其历史消息),成功后会删除本地会话。对于之前版本,可设置调用该接口删除会话的本地消息,但该接口不删除本地会话。
- [IM SDK] 群组和聊天室操作的默认错误码提示由 `EMErrorGroupMembersFull`(604)和 `EMErrorChatroomMembersFull`(704)调整为 `EMErrorGroupPermissionDenied`(603)和 `EMErrorChatroomPermissionDeniedD`(703)。例如,群组普通成员设置群组管理员时,由于缺乏权限,会提示 603 错误。

### 修复

- [IM SDK] 修复发送图片消息时指定缩略图尺寸未生效的问题。
- [IM SDK] 修复未拉取好友时收到好友事件,导致好友列表不能更新的问题。

### [EaseCallKIt](easecallkit.html)

- 升级依赖的 `AgoraRtcEngine` 版本,防止因为旧版本包含 Bitcode 无法上传 App Store。

## 版本 V4.9.0 Dev 2024-08-30(开发版)

### 新增特性
Expand Down
6 changes: 3 additions & 3 deletions docs/document/react-native/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,18 @@
- `ChatManager.removeConversationFromServer`:单向删除服务端的单个会话及其历史消息。
- `ChatManager.deleteConversation`:删除本地单个会话及其历史消息。

## 实现方法
## 实现方法

#### 单向删除服务端会话及其历史消息

你可以调用 `removeConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `removeConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端和本地的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口不会删除本地会话。该接口不影响其他用户的会话和消息。

示例代码如下:

```typescript
// convId: 会话 ID。
// convType:会话类型。
// isDeleteMessage:删除会话时是否同时删除服务端该会话中的消息
// isDeleteMessage:删除会话时是否同时删除服务端和本地的该会话中的消息
ChatClient.getInstance()
.chatManager.removeConversationFromServer(convId, convType, isDeleteMessage)
.then(() => {
Expand Down
2 changes: 1 addition & 1 deletion docs/document/unity/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

### 单向删除服务端会话及其历史消息

你可以调用 `DeleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `DeleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除本地会话。该接口不影响其他用户的会话和消息。

```csharp
// 如果需要保留服务端的历史消息,`isDeleteServerMessages` 传 `false`。
Expand Down
4 changes: 2 additions & 2 deletions docs/document/windows/conversation_delete.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@

### 单向删除服务端会话及其历史消息

你可以调用 `DeleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除会话的本地消息,但不会删除本地会话。该接口不影响其他用户的会话和消息。
你可以调用 `DeleteConversationFromServer` 方法删除服务器端会话,并选择是否删除服务端的历史消息。会话和消息删除后,当前用户无法从服务器获取该会话和消息。调用该接口会删除本地会话。该接口不影响其他用户的会话和消息。

```csharp
// 如果需要保留服务端的历史消息,`isDeleteServerMessages` 传 `false`。
// 如果需要保留服务端和本地的历史消息,`isDeleteServerMessages` 传 `false`。
SDKClient.Instance.ChatManager.DeleteConversationFromServer(conversationId, conversationType, isDeleteServerMessages, new CallBack(
onSuccess: () =>
{
Expand Down
2 changes: 2 additions & 0 deletions docs/product/product_dynamics.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
| 动态名称 | 动态描述 | 发布时间 | 相关文档 |
| :----- | :------- | :---------------- | :---------------- |
| SDK 4.9.1 开发版发布 | uni-app SDK 支持[离线推送](/document/applet/push/uniapp_push.html)| 2024-09-06 | [小程序 4.9.1 更新日志](/document/applet/releasenote.html#版本-v4-9-1-dev-2024-09-06-开发版) |
| SDK 4.10.0 开发版发布 | **新增特性**:<br/> - 移动端支持获取数据库中的消息总数;<br/> - 新增[两个错误码](/document/android/error.html),用于提示用户在群组黑名单或聊天室黑名单中。群组或聊天室黑名单中的用户进行某些操作时,例如,加入群组,会提示该错误。<br/> - [单向删除服务端会话也会删除本地会话](/document/android/conversation_delete.html#单向删除服务端会话及其历史消息)| 2024-09-30 | <br/> - [Android 4.10.0 更新日志](/document/android/releasenote.html#版本-v4-10-0-dev-2024-09-30-开发版)<br/> - [iOS 4.10.0 更新日志](/document/ios/releasenote.html#版本-v4-10-0-dev-2024-09-30-开发版) |


| 动态名称 | 动态描述 | 发布时间 | 相关文档 |
| :----- | :------- | :---------------- | :---------------- |
Expand Down

0 comments on commit a8be834

Please sign in to comment.