tencent cloud

即时通信 IM

Android(Compose)

下载
聚焦模式
字号
最后更新时间: 2026-06-03 16:40:55
本文会引导您在 TUIKit Compose 上创建群组。

开发环境要求

Android Studio Arctic Fox (2020.3.1) 及以上
Android SDK API Level 21 (Android 5.0) 及以上

前置条件

在构建界面之前,请确保您已经完成了以下 4 件事:
1. 在控制台创建了一个应用。
2. 在控制台创建了至少 2 个用户账号。
3. 集成了 TUIKit Compose
4. 调用 LoginStorelogin 接口登录组件。
注意:
1. 每次启动应用,登录一次即可。
2. 请确保登录成功,我们建议您在登录成功的回调里进行下文的操作。
如果您尚未完成以上 4 步,请先参考 快速开始 中的对应步骤完成,否则在实现下文功能时可能遭遇阻碍。
如果您已经完成,请继续阅读下文。

创建群组

创建群组需要选择联系人,请先添加一些联系人,可参考文档:添加联系人
TUIKit Compose 提供了 AddNewChatBottomSheet 组件来实现创建群组流程,该组件内部组合了联系人选择(UserPicker)和群组设置(GroupSettingsBottomSheet)等视图。创建群组成功后,你可以向该群组发送消息。
注意,如果你直接使用我们的示例代码,需要预填充这几个参数:
sdkAppID,上文获取的 sdkAppID。
userID,操作者的 userID,也就是 快速开始 中创建的 user1。
userSig,操作者的 userSig,也就是 快速开始 中创建的 user1 的 userSig。
App 启动即加载创建群组选择联系人界面,示例代码如下所示:
// CreateGroupActivity.kt
import android.os.Bundle
import androidx.activity.compose.setContent
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import io.trtc.tuikit.atomicx.contactlist.ui.addnewchat.AddNewChatBottomSheet
import io.trtc.tuikit.atomicx.contactlist.viewmodels.ChatType
import io.trtc.tuikit.atomicxcore.api.CompletionHandler
import io.trtc.tuikit.atomicxcore.api.login.LoginStore

class CreateGroupActivity : AppCompatActivity() {

private val sdkAppID: Int = 1234567890 // TODO: Fill in your sdkAppID here
private val userID = "" // TODO: Fill in your userID here
private val userSig = "" // TODO: Fill in your generated userSig here

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
login()
}

private fun login() {
LoginStore.shared.login(this, sdkAppID, userID, userSig, object : CompletionHandler {
override fun onSuccess() {
showCreateGroupPage()
}
override fun onFailure(code: Int, desc: String) {
// Handle login failure
}
})
}

private fun showCreateGroupPage() {
setContent {
var showSheet by remember { mutableStateOf(true) }
var createdConversationID by remember { mutableStateOf<String?>(null) }

if (createdConversationID != null) {
// Group created successfully, navigate to chat page
// Use createdConversationID to open ChatPage
}

if (showSheet) {
AddNewChatBottomSheet(
chatType = ChatType.GROUP,
onDismiss = { showSheet = false },
onCreateChat = { conversationId ->
showSheet = false
createdConversationID = conversationId
}
)
}
}
}
}
运行效果如下:
搜索联系人
发送请求



更多实践

您可以本地 运行 Chat Demo 源码,探索更多的界面实现。

联系我们

如果您在接入或使用过程中有任何疑问或者建议,欢迎 联系我们 提交反馈。


帮助和支持

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

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

文档反馈