本文将指导您如何在较短时间内接入
Classroom
组件。遵循本指南,您将在10分钟内完成以下关键步骤,并最终实现具备完整 UI 界面的音视频课堂功能。

环境准备
最低兼容 Android 4.4(SDK API Level 19),建议使用 Android 5.0 (SDK API Level 21)及以上版本。
Android Studio 3.5 及以上的版本(Gradle 3.5.4 及以上的版本)。
Android 4.4 及以上的手机设备。
步骤1:开通服务
步骤2:下载 Classroom 组件
1. 在 Github 中克隆/下载代码,然后拷贝
Android
目录下的timcommon
、 tuiroomkit
子目录到您当前工程中的 app 同级目录中,如下图:

步骤3:工程配置
1. 在工程根目录下找到
settings.gradle
(或settings.gradle.kts
)文件,并在其中添加以下代码,以将tuiroomkit
组件导入到您当前的项目中。include ':timcommon'include ':tuiroomkit'
include (":timcommon")include (":tuiroomkit")
2. 在 app 目录下找到
build.gradle
(或 build.gradle.kts
)文件,并在其中添加以下代码。这段代码的作用是声明当前 app
对新加入的 tuiroomkit
组件的依赖。api project(':tuiroomkit')
api(project(":tuiroomkit"))
3. 由于我们在 SDK 内部使用了Java 的反射特性,需要将 SDK 中的部分类加入不混淆名单,因此需要您在 proguard-rules.pro 文件中添加如下代码:
-keep class com.tencent.** { *; }
4. 在 app 目录下找到 AndroidManifest.xml 文件,并在
application
节点中添加 tools:replace="android:allowBackup"
,以覆盖组件内的设置并使用自己的设置。// app/src/main/AndroidManifest.xml<applicationandroid:name=".DemoApplication"android:allowBackup="false"android:icon="@drawable/app_ic_launcher"android:label="@string/app_name"android:largeHeap="true"android:theme="@style/AppTheme"tools:replace="android:allowBackup">
步骤4:登录
在您的项目中添加以下代码,它通过调用
TUILogin
中的相关接口完成组件的登录。这个步骤极其关键,因为只有登录后才能正常使用 Classroom
的各项功能,请您耐心检查相关参数是否配置正确。import com.tencent.qcloud.tuicore.TUILogin;import com.tencent.qcloud.tuicore.interfaces.TUICallback;import com.tencent.cloud.tuikit.roomkit.debug.GenerateTestUserSig;String userId = "denny"; // 请替换为您的 UserIDint sdkAppId = 1400000001; // 请替换为步骤一取到的 sdkAppIdString sdkSecretKey = "xxxx"; // 请替换为您的 sdkSecretKeyString userSig = GenerateTestUserSig.genTestUserSig(sdkAppId, userId, sdkSecretKey);TUILogin.login(context,sdkAppId,userId,userSig,new TUICallback() {@Overridepublic void onSuccess() {}@Overridepublic void onError(int errorCode, String errorMessage) {}});
import com.tencent.qcloud.tuicore.TUILoginimport com.tencent.qcloud.tuicore.interfaces.TUICallbackimport com.tencent.cloud.tuikit.roomkit.debug.GenerateTestUserSigval userId = "denny" // 请替换为您的 UserIDval sdkAppId = 1400000001 // 请替换为步骤一取到的 sdkAppIdval sdkSecretKey = "xxxx" // 请替换为您的 sdkSecretKeyval userSig = GenerateTestUserSig.genTestUserSig(sdkAppId, userId, sdkSecretKey)TUILogin.login(this,sdkAppId,userId,userSig,object : TUICallback() {override fun onSuccess() {}override fun onError(errorCode: Int, errorMessage: String) {}})
TUILogin.login 函数参数说明: |
SDKAppID:在 开通服务 中的最后一步中获取。 UserID:当前用户的 ID,字符串类型,只允许包含英文字母(a-z 和 A-Z)、数字(0-9)、连词符(-)和下划线(_)。 UserSig:使用 开通服务 的第3步中获取的 SDKSecretKey 对SDKAppID 、UserID 等信息进行加密,就可以得到UserSig ,它是一个鉴权用的票据,用于腾讯云识别当前用户是否能够使用TRTC 的服务。您可以通过控制台中的 辅助工具 生成一个临时可用的UserSig 。更多信息请参见 如何计算及使用 UserSig。 说明: 开发环境:如果您处于本地开发和调试阶段,可以使用本地的 GenerateTestUserSig.genTestUserSig() 函数来生成 userSig。请注意,该方法中的 SDKSecretKey 很容易被反编译和逆向破解,一旦您的密钥泄露,攻击者便可以盗用您的腾讯云流量。 生产环境:如果您的项目要发布上线,请采用 服务端生成 UserSig 的方式。 |
步骤5:发起您的第一次课堂
// 请替换 "123456" 为您自定义的课堂号ConferenceDefine.StartConferenceParams params = new ConferenceDefine.StartConferenceParams("123456");params.isSeatEnabled = true;Intent intent = new Intent(this, ConferenceMainActivity.class);intent.putExtra(KEY_START_CONFERENCE_PARAMS, params);startActivity(intent);
// 请替换 "123456" 为您自定义的课堂号val params = ConferenceDefine.StartConferenceParams("123456")params.isSeatEnabled = trueval intent = Intent(this, ConferenceMainActivity::class.java)intent.putExtra(KEY_START_CONFERENCE_PARAMS, params);startActivity(intent)
步骤6:加入课堂
// 请替换 "123456" 为您自定义的课堂号ConferenceDefine.JoinConferenceParams params = new ConferenceDefine.JoinConferenceParams("123456");Intent intent = new Intent(this, ConferenceMainActivity.class);intent.putExtra(KEY_JOIN_CONFERENCE_PARAMS, params);startActivity(intent);
// 请替换 "123456" 为您自定义的课堂号val params = ConferenceDefine.JoinConferenceParams("123456")val intent = Intent(this, ConferenceMainActivity::class.java)intent.putExtra(KEY_JOIN_CONFERENCE_PARAMS, params);startActivity(intent)
界面展示
当您成功完成步骤1 - 步骤6,UI 界面效果如下:
课堂主界面 | 用户列表 |
![]() | ![]() |