Skip to content

Commit 508a10e

Browse files
authored
Merge pull request #1365 from haoxiuwen/doc-v2
Optimize RN ChatUIKit/ChatroomUIKit Quickstart
2 parents 5caa040 + 3c00bdc commit 508a10e

File tree

13 files changed

+285
-142
lines changed

13 files changed

+285
-142
lines changed
-37.2 KB
Loading
15.7 KB
Loading
117 KB
Loading
127 KB
Loading

docs/document/android/demo.md

Lines changed: 66 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<ImageItem src="/images/uikit/chatuikit/android/main_contact_list.png" title="通讯录" />
2020
</ImageGallery>
2121

22-
## 快速跑通 Demo
22+
## 快速跑通 Demo 源码
2323

2424
### 开发环境要求
2525

@@ -31,7 +31,7 @@
3131

3232
### 跑通步骤
3333

34-
1. [创建应用](/product/enable_and_configure_IM.html)
34+
1. [创建应用](/product/enable_and_configure_IM.html#创建应用)
3535
2. [获取应用的 App Key](/product/enable_and_configure_IM.html#获取环信即时通讯-im-的信息)
3636
3. [创建用户](/product/enable_and_configure_IM.html#创建-im-用户)
3737
4. [下载即时通讯 IM Demo 项目源码](https://github.com/easemob/easemob-demo-android)
@@ -49,14 +49,63 @@ App Server 为 Demo 提供以下功能:
4949
- 通过手机号获取验证码。
5050
- 通过手机号和验证码返回环信用户 ID 和环信用户 Token。
5151
- 上传头像并返回地址。
52-
- 根据用户的信息生成 [EaseCallKit](https://doc.easemob.com/document/android/easecallkit.html) 登录所需的 Token。
52+
- 根据用户的信息生成 [EaseCallKit](easecallkit.html) 登录所需的 Token。
5353
- 获取音视频通话时环信用户 ID 和 Agora UID 的映射关系。
5454

5555
你通过以下步骤部署 App Server:
5656

5757
1. 部署 App Server。详见 [服务端源码](https://github.com/easemob/easemob-im-app-server/tree/dev-demo)
58-
2. 在 Demo 工程根目录下 `local.properties` 文件中,填写 App Server 的域名或 IP 地址,格式为 `APP_SERVER_DOMAIN = 服务器域名或ip地址`
58+
2. 在 Demo 工程根目录下 `local.properties` 文件中,开发者在这里应该根据自己部署的 App Server 替换填写以下配置属性:
59+
60+
```gradle
61+
# App Server 服务器域名或 IP 地址
62+
APP_SERVER_DOMAIN=xxx.xxx.com
63+
64+
# App Server 用户管理 URL 路径
65+
APP_BASE_USER=/inside/app/user
66+
67+
# App Server 群组管理 URL 路径
68+
APP_BASE_GROUP=/inside/app/group
69+
70+
# App Server 登录管理 URL 路径
71+
APP_SERVER_LOGIN=/login/V2
72+
73+
# App Server 上传用户图像 URL 路径
74+
APP_UPLOAD_AVATAR=/avatar/upload
75+
76+
# App Server 群图像 URL 路径
77+
APP_GROUP_AVATAR=/avatarurl
78+
79+
# 从服务端拉取 Callkit 登录使用的 RTC Token URL 路径
80+
APP_RTC_TOKEN_URL=/inside/token/rtc/channel
81+
82+
# RTC APP ID (easecallkit.html)
83+
RTC_APPID=xxxxxxxxxxxxxxxxxxxxxxx
84+
85+
# 获取 RTC UID 和环信用户名映射关系的 URL 路径
86+
APP_RTC_CHANNEL_MAPPER_URL=/inside/agora/channel/mapper
87+
88+
# 获取验证码时与 App Server 加密参数所用的 AES 密钥
89+
SECRET_KEY=xxxxxxxxxxxxxxxxxxxxxxx
90+
```
91+
5992
3. 在 Demo 工程根目录下 `local.properties` 文件中,填入 `LOGIN_WITH_APPSERVER = true`,即通知 Demo 工程需要启用 App Server,体验完整功能。
93+
4. (可选) 离线推送相关配置。
94+
95+
从各厂商申请对应推送相关 Appkey/AppSecret/AppID 后,填入 Demo 工程根目录下 `local.properties` 文件中,可使用各厂商推送功能。
96+
97+
```gradle
98+
MEIZU_PUSH_APPKEY=xxxxxxxxxxxxxxxxxxxxxxx
99+
MEIZU_PUSH_APPID=xxxxxxxxxxxxxxxxxxxxxxx
100+
OPPO_PUSH_APPKEY=xxxxxxxxxxxxxxxxxxxxxxx
101+
OPPO_PUSH_APPSECRET=xxxxxxxxxxxxxxxxxxxxxxx
102+
VIVO_PUSH_APPID=xxxxxxxxxxxxxxxxxxxxxxx
103+
VIVO_PUSH_APPKEY=xxxxxxxxxxxxxxxxxxxxxxx
104+
MI_PUSH_APPKEY=xxxxxxxxxxxxxxxxxxxxxxx
105+
MI_PUSH_APPID=xxxxxxxxxxxxxxxxxxxxxxx
106+
FCM_SENDERID=xxxxxxxxxxxxxxxxxxxxxxx
107+
HONOR_PUSH_APPID=xxxxxxxxxxxxxxxxxxxxxxx
108+
```
60109

61110
**服务端中的 App Key 要跟客户端的 App Key 保持一致。**
62111

@@ -137,23 +186,23 @@ App Server 为 Demo 提供以下功能:
137186
```
138187

139188

140-
### 主要模块介绍
189+
### 核心类
141190

142191
| 模块 | 描述 |
143192
| :------------------- | :----- |
144-
| 聊天模块 | 展示如何依赖 EaseIMKit 实现聊天列表,如何扩展消息类型及如何增加扩展菜单等的逻辑。 |
145-
| 会话列表模块 | 展示如何依赖 EaseIMKit 实现会话列表的逻辑及实现系统消息的具体逻辑。 |
146-
| 联系人模块 | 展示如何依赖 EaseIMKit 实现联系人列表的逻辑。 |
147-
| 聊天设置模块 | 展示 IM SDK 提供的对于群聊成员及群组属性的操作。 |
148-
| 设置模块 | 展示 IM SDK 对于新消息的设置及消息免打扰,群组等通用设置。 |
149-
| 开发者模块 | 展示 IM SDK 提供的一些常规的开发者可以设置的功能。 |
193+
| DemoHelper | 环信(Demo)全局帮助类,主要功能为初始化 IM SDK,初始化 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html)[EaseCallKit](easecallkit.html) 相关及注册对话类型等。 |
194+
| ConversationListFragment | 继承自 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 中的 `ChatUIKitConversationListFragment`,展示当前用户的所有会话,包含单聊和群组聊天(不包括聊天室),并且提供会话搜索、删除、置顶和免打扰功能 |
195+
| ChatActivity 及 ChatFragment | `ChatActivity` 继承自 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 中的 `UIKitChatActivity`,主要进行了权限的请求,比如相机权限,语音权限等。`ChatFragment` 继承自 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 中的 `UIKitChatFragment`,该页面提供如下功能:<br/> - 发送和接收消息, 包括文本、表情、图片、语音、视频、文件和名片消息。<br/> - 对消息进行复制、引用、撤回、删除、编辑、重新发送和审核。<br/> - 清除本地消息。 |
196+
| ChatContactListFragment | 继承自 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 中的 `ChatUIKitContactsListFragment`,用于展示通讯录列表,包括联系人搜索,添加联系人,好友申请列表入口,群组列表入口,联系人列表。 |
197+
| ChatGroupDetailActivity | 继承自 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 中的 `ChatUIKitGroupDetailActivity`,实现了如下功能:群成员管理,群属性管理,上传共享文件,设置消息免打扰,解散或者退出群组等。 |
150198

151-
### 主要类介绍
199+
### 核心模块
152200

153201
| 模块 | 描述 |
154202
| :------------------- | :----- |
155-
| `DemoHelper` | 环信(EaseIM)全局帮助类,主要功能为初始化 IM SDK,初始化 EaseIMKit 相关及注册对话类型等。 |
156-
| `ConversationListFragment` | 继承自 EaseIMKit 中的 `ChatUIKitConversationListFragment`,展示扩展条目长按事件,在列表前端添加布局及条目点击事件实现等 |
157-
| `ChatActivity及ChatFragment` | ChatFragment 继承自 EaseIMKit 中的 `UIKitChatFragment`,展示了扩展条目长按事件,预置条目长按菜单及对重写部分长按事件功能,展示了如何重置及添加更多扩展功能,并展示了实现了头像点击事件及正在输入等事件的相应。 |
158-
| `ChatContactListFragment` | 继承自 EaseIMKit 中的 `ChatUIKitContactsListFragment`,展示了添加头布局,添加条目长按功能及实现条目点击事件等 |
159-
| `ChatGroupDetailActivity` | 实现了如下功能:添加群成员,修改群公告及群介绍,上传共享文件,进行群组管理,设置消息免打扰及解散或者退出群组等。 |
203+
| 聊天模块 | 展示如何依赖 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 实现聊天页面,如何发送消息、消息管理、扩展消息类型及如何增加扩展菜单等的逻辑。 |
204+
| 会话列表模块 | 展示如何依赖 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 实现会话列表的逻辑及实现系统消息的具体逻辑。 |
205+
| 联系人模块 | 展示如何依赖 [ChatUIKit](/uikit/chatuikit/android/chatuikit_overview.html) 实现联系人列表的逻辑。 |
206+
| 我的模块 | 账户管理、用户状态管理及 App 的一些功能样式设置。 |
207+
| 开发者模块 | 展示 IM SDK 提供的一些常规的开发者可以设置的功能。 |
208+

docs/document/android/releasenote.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
### 优化
2727

2828
- 修改 Token 即将过期事件 [onTokenWillExpire](connection.html#监听连接状态) 的触发时机。SDK 会在 Token 有效期达到 80% 时(之前版本为 50% )回调即将过期通知。
29-
- [IM Demo] 跑通即时通讯 IM Demo 时,无需部署 App Server。Demo 跑通详情,请参见 [Demo 跑通文档](/document/android/demo.html#快速跑通-demo)
29+
- [IM Demo] 跑通即时通讯 IM Demo 时,无需部署 App Server。Demo 跑通详情,请参见 [Demo 跑通文档](/document/android/demo.html#快速跑通-demo-源码)
3030

3131
### 修复
3232

docs/document/flutter/demo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<ImageItem src="/images/uikit/chatuikit/android/main_contact_list.png" title="通讯录" />
2020
</ImageGallery>
2121

22-
## 快速跑通 Demo
22+
## 快速跑通 Demo 源码
2323

2424
### 开发环境要求
2525

docs/document/ios/demo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<ImageItem src="/images/uikit/chatuikit/ios/main_contact_list.png" title="通讯录" />
2222
</ImageGallery>
2323

24-
## 快速跑通 Demo
24+
## 快速跑通 Demo 源码
2525

2626
### 开发环境要求
2727

docs/document/ios/releasenote.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
### 优化
2626

2727
- 修改 Token 即将过期事件 [tokenWillExpire](connection.html#监听连接状态) 的触发时机。SDK 会在 Token 有效期达到 80% 时(之前版本为 50% )回调即将过期通知。
28-
- [IM Demo] 跑通即时通讯 IM Demo 时,无需部署 App Server。Demo 跑通详情,请参见 [Demo 跑通文档](demo.html#快速跑通-demo)
28+
- [IM Demo] 跑通即时通讯 IM Demo 时,无需部署 App Server。Demo 跑通详情,请参见 [Demo 跑通文档](demo.html#快速跑通-demo-源码)
2929

3030
## 版本 V4.14.0 Dev 2025-4-21(开发版)
3131

docs/document/react-native/demo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<ImageItem src="/images/uikit/chatuikit/android/main_contact_list.png" title="通讯录" />
2020
</ImageGallery>
2121

22-
## 快速跑通 Demo
22+
## 快速跑通 Demo 源码
2323

2424
### 开发环境要求
2525

0 commit comments

Comments
 (0)