tencent cloud

即时通信 IM

iOS(UIKit)

下载
聚焦模式
字号
最后更新时间: 2026-08-06 16:42:22
本文会引导您集成 TUIKit 或 TUIChat 并成功发送第一条消息。
如需快速集成 TUIKit,可使用 AI 集成。

开发环境要求

Xcode 15 及以上
iOS 14.0 及以上
CocoaPods 1.7.5 及以上

创建应用

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



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



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




创建账号

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

在控制台创建

说明:
更多账号相关操作,请参见 账号管理。
1. 登录 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

聊天互动中发送消息的功能是由 TUIChat 实现的,您至少要集成 TUIChat 才能正常收发消息,其他的组件,例如 TUIConversation、TUIContact 等,您可以按需集成。
如果您需要多个 UI 组件,可以集成 TUIKit,请参见文档:集成 TUIKit。
如果您只需要集成 TUIChat,请参见文档:仅集成聊天。

登录 TUIKit

使用 TUIKit 组件里的功能都需要登录,由 TUILogin 提供登录接口,如下:
// API location: TUICore/TUILogin.h
+ (void)login:(int)sdkAppID userID:(NSString *)userID userSig:(NSString *)userSig succ:(__nullable TSucc)succ fail:(__nullable TFail)fail;
该接口要求输入 3 个参数:
SDKAppID,新创建应用的 SDKAppID,已在上文 创建应用 中获取到。
UserID,User1 的 UserID,已在上文 创建账号 中获取到,注意不是用户的 NickName。
UserSig,User1 的 UserSig,已在上文 生成 UserSig 中获取到。
示例如下:
Swift
Objective-C
#pragma mark - Life cycle
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
TUILogin.login(Int32(SDKAPPID), userID: userID, userSig: userSig, config: loginConfig, succ:{
//Success
}, fail: { code, msg in
//Failed
})
return true
}
#pragma mark - Life cycle
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[TUILogin login:SDKAPPID userID:self.userID userSig:self.userSig config:self.loginConfig succ:^{
//Success
} fail:^(int code, NSString *msg) {
//Failed
}];
return YES;
}


跳转聊天界面

为了实现发消息的目标,接下来要做的是:
1. 使用上述注册的账号之一(下文称之为 user1)登录 TUIKit,此时 user1 上线了。
2. user1 给另一个账号(下文称之为 user2)发消息,user2 可以不登录,跟 user1 可以没有任何好友关系。
说明:
此处讲解的是登录 user1 后给 user2 发消息。如果您希望 user1 和 user2 能聊天互动,需要使用同样的步骤登录 user2 并进入与 user1 的聊天界面。
您可以在 user1 登录成功的回调里跳转或者嵌套聊天界面,就可以给 user2 发消息了。
示例代码如下,其中 userID 需要传入聊天对象 user2 的 userID。
Swift
Objective-C
// Pass userID for 1v1 conversation.
func pushToChatViewController(groupID: String?, userID: String?) {
// Create conversationData.
let conversationData = TUIChatConversationModel()
conversationData.userID = userID
// Create c2c chatVC.
let chatVC = TUIC2CChatViewController_Minimalist()
chatVC.conversationData = conversationData
// Option 1: navigate to chatVC.
navigationController?.pushViewController(chatVC, animated: true)
// Option 2: add chatVC as a childVC to your parent VC.
// addChild(chatVC)
// view.addSubview(chatVC.view)
}
// Pass userID for 1v1 conversation.
- (void)pushToChatViewController:(NSString *)groupID userID:(NSString *)userID {
// Create conversationData.
TUIChatConversationModel *conversationData = [[TUIChatConversationModel alloc] init];
conversationData.userID = userID;
// Create c2c chatVC.
TUIBaseChatViewController_Minimalist *chatVC = [[TUIC2CChatViewController_Minimalist alloc] init];
chatVC.conversationData = conversationData;
// Option 1: navigate to chatVC.
[self.navigationController pushViewController:chatVC animated:YES];
// Option 2: add chatVC as a childVC to your parent VC.
// [self addChildViewController:vc];
// [self.view addSubview:vc.view];
}

发送第一条消息

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


联系我们

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

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈