快速开始

本文会引导您集成 TUIKit 并成功发送第一条消息。
如需快速集成 TUIKit,可使用 AI 集成

开发环境要求

Flutter >= 3.29.0 版本,Dart >= 3.7.0 版本,Kotlin >= 1.9 版本。
Android Studio Ladybug | 2024.2.1 及以上版本,Android Gradle plugin 7.3.1 以上版本,JDK 17 版本。
Xcode 12.0 及以上版本。

创建应用

在集成 TUIKit 之前,您需要先去控制台创建一个新的 Chat 应用,步骤如下:
1. 注册腾讯云 账号并添加支付方式。
2. 登录 即时通信 Chat 控制台,单击 创建应用

3. 在创建弹窗中输入应用名称,选择 Chat,选择合适的 区域,单击 创建

4. 创建完成后,可在当前 Chat 产品详情页面 查看新建应用的状态、业务版本、SDKAppID、SDKSecretKey、创建时间以及到期时间。
说明
新建应用的业务版本默认为体验版,状态默认为启用。
同一个腾讯云账号,最多可创建300个即时通信 Chat 应用。若已有300个应用,您可以先 停用并删除 无需使用的应用后再创建新的应用。应用删除后,该 SDKAppID 对应的所有数据和服务不可恢复,请谨慎操作。


创建账号

创建 Application 只能保证您可以正常初始化 SDK。如果要成功发消息,您还需要在 Application 中创建用户账号。创建账号方式有很多,例如直接在控制台创建,或者通过 API 在客户端注册,您可以选择任意一种合适的方式。
注意:
发消息至少是两个用户之间进行,因此您在此环节至少要创建 2 个账号。请记录下这 2 个账号的 userID,后续步骤会使用到。

在控制台创建

说明:
更多账号相关操作,请参见 账号管理
1. 登录 即时通信 Chat 控制台,在左侧导航栏选择 Chat > 账号管理,在顶部选择目标应用
2. 在账号管理页面,单击新建账号。
3. 在弹出的新建账号对话框中,配置以下参数:

账号类型:区分普通账号和管理员账号。“App管理员”是对 App 具有最高管理权限的角色,可调用 REST API 接口,进行创建/解散群组、发送全员推送消息等操作。每个应用最多支持配置 10 个管理员。
用户名:需输入用户名(UserID),必填。
昵称:可输入用户昵称,非必填。
头像:可输入用户头像链接 URL,非必填。
4. 单击确定保存配置。
5. 账号新建完成后,在账号列表中可以查看用户名、昵称、账号类型、头像和创建时间。

客户端注册账号

如果你想通过客户端注册,不用额外操作,只需要在下文 登录 TUIKit 中传入一个全新的 UserID 即可,此时 TUIKit 会自动为您注册该 UserID。

生成 UserSig

说明:
更多 UserSig 相关操作,请参见 UserSig 生成&校验
2. 在签名(UserSig)生成工具区域,选择应用输入 UserID
3. 单击生成(UserSig)即可生成签名,签名有效期默认为180天。
4. 单击复制(UserSig)即可粘贴保存签名。


集成 TUIKit

聊天互动中发送消息的功能是由 MessageList 实现的,请先参见功能接入 文档集成 TUIKit 。

登录 TUIKit

使用 TUIKit 组件里的功能都需要登录,由 LoginStore 提供登录接口,如下:
final result = await LoginStore.shared.login(
sdkAppID: SDKAPPID,
userID: userID,
userSig: userSig,
);
if (result.errorCode == 0) {
该接口要求输入 3 个参数:
SDKAppID,新创建应用的 SDKAppID,已在上文 创建应用 中获取到。
UserID,User1 的 UserID,已在上文 创建账号 中获取到,注意不是用户的 NickName。
UserSig,User1 的 UserSig,已在上文 生成 UserSig 中获取到。

跳转聊天界面

为了实现发消息的目标,接下来要做的是:
1. 使用上述注册的账号之一(下文称之为 user1)登录 TUIKit,此时 user1 上线了。
2. user1 给另一个账号(下文称之为 user2)发消息,user2 可以不登录,跟 user1 可以没有任何好友关系。
说明:
此处讲解的是登录 user1 后给 user2 发消息。如果您希望 user1 和 user2 能聊天互动,需要使用同样的步骤登录 user2 并进入与 user1 的聊天界面。
您可以在 user1 登录成功的回调里跳转或者嵌套聊天界面,就可以给 user2 发消息了。
示例代码如下,其中 userID 需要传入聊天对象 user2 的 userID。
final conversation = ConversationInfo(
conversationID: 'c2c_${userID}',
type: ConversationType.c2c,
);
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => ChatPage(
conversation: conversation,
),
),
);

发送第一条消息

操作完上述步骤,您可以跳转到如下的聊天界面。快点手动点击输入框,发送您的第一条消息吧:


联系我们

如果您对本文有疑问,欢迎加入 Telegram 技术交流群,您将获得可靠的技术支持。