注意:集成提示:
注意:这篇档介绍基于 UI 组件 的开播方式(含完整交互 UI)。若你需通过 Core SDK 自行搭建主播端界面,请参考 主播开播 (Core SDK)。
一、功能概览
·开播前预览: 支持主播开播前设置房间名称、封面等个性化配置。
·麦位管理: 支持上麦、下麦、禁麦、锁麦等多种麦位管理操作。
·观众互动: 支持弹幕、礼物、点赞 等丰富的直播互动形式。
·直播间管理: 支持在线用户列表展示,以及直播间内的禁言、踢人 等多种管理操作。
| 开播前预览 | 麦位管理 | 观众互动 | 直播间管理 |
| | | | |
二、步骤 1:开通服务
参考 开通服务 文档开通「体验版」或「大规模直播版」套餐。
三、步骤 2:代码集成
参考 准备工作 接入 TUILiveKit。
四、步骤 3:创建并展示语聊房视图控制器
VoiceRoomActivity 组件已内置了语聊房场景的主播端完整 UI 与业务逻辑。你只需启动该 Activity,即可快速实现主播开播功能。推荐在你 App 的“开始直播”按钮点击事件中,执行以下逻辑:
import android.content.Intentimport androidx.appcompat.app.AppCompatActivityimport com.trtc.uikit.livekit.voiceroom.VoiceRoomDefineimport com.trtc.uikit.livekit.voiceroom.view.TUIVoiceRoomFragment.RoomBehavior.PREPARE_CREATEimport com.trtc.uikit.livekit.voiceroom.view.VoiceRoomActivity// YourActivity 代表你发起直播的页面class YourActivity : AppCompatActivity() { // 响应“开始直播”按钮点击事件 fun onStartVoiceRoomClicked() { // 1. 配置房间参数 (RoomParams) val voiceRoomInfo = VoiceRoomDefine.CreateRoomParams().apply { maxAnchorCount = VoiceRoomDefine.MAX_CONNECTED_VIEWERS_COUNT } // 2. 准备 Intent,并传入必要参数 val roomId = "test_voice_room_id" val intent = Intent(this, VoiceRoomActivity::class.java).apply { putExtra(VoiceRoomActivity.INTENT_KEY_ROOM_ID, roomId) putExtra(VoiceRoomActivity.INTENT_KEY_CREATE_ROOM_PARAMS, voiceRoomInfo) // behavior: PREPARE_CREATE 代表先进入开播前预览页 putExtra(VoiceRoomActivity.INTENT_KEY_ROOM_BEHAVIOR, PREPARE_CREATE.ordinal) } // 3. 跳转到语聊房页面 startActivity(intent) }}
Intent Extra 参数说明:
| 参数名 | | 类型 | 描述 |
| VoiceRoomActivity.INTENT_KEY_ROOM_ID | | string | 全局唯一的直播间 Id。 |
| VoiceRoomActivity.INTENT_KEY_ROOM_BEHAVIOR | | Int | 进房行为:AUTO_CREATE:自动创建直播间并进房。PREPARE_CREATE: 先进入开播前预览页,用户点击“开始直播”后创建直播间并进房。JOIN:观众进房。 |
| roomParams | | RoomParams | 主播开播参数,详见下一节。 |
RoomParams 参数说明:
| 参数名 | 类型 | 描述 |
| maxSeatCount | Int | 直播间最大麦位数。 |
| seatMode | TUIRoomDefine.SeatMode | 观众的上麦模式:APPLY_TO_TAKE:观众需要申请,主播同意后上麦FREE_TO_TAKE: 观众自由上麦,无需主播同意。 |
五、自定义你的界面布局
TUILiveKit 提供了界面定制能力,以满足多样化的业务需求。你不仅可以选择不同的布局模板,还可以轻松替换界面中的文案和图标。
六、直播布局模板选择
TUILiveKit 语聊提供 2 种布局样式,你可在主播开播前预览页的 UI 交互布局按钮选择合适样式:
七、布局概览:
| 名称 | 聊天室 | KTV |
| 描述 | 默认布局,页面只显示麦位网格图。 | 麦位网格图上方显示 KTV 歌曲播放器。 |
| 预览 | | |
八、文案修改
TUILiveKit 使用 Android 标准的 字符串资源 (strings.xml) 来管理 UI 所需的文案显示。你可以直接修改 tuilivekit 模块中的 strings.xml 文件,以实现文案自定义。
九、图标替换
TUILiveKit 使用 drawable 资源来管理 UI 所需的图片资源。你可以直接在 tuilivekit 模块的 res/drawable 目录下替换同名图片资源,以实现图标替换。
十、下一步
恭喜你,现在你已经成功集成了 主播开播 。接下来,你可以实现观众观看、直播列表等功能,可参考下表:
| 功能 | 描述 | 集成指引 |
| 观众观看 | 实现观众进入主播的语聊房后收听,实现上麦、弹幕显示等功能 | 观众观看 |
| 直播列表 | 展示直播列表界面和功能,包含直播列表,房间信息展示功能 | 直播列表 |
| 礼物系统 | 实现自定义礼物素材配置、计费系统对接、PK 场景互动等功能 | 礼物系统 |
十一、开播后没有声音?
请检查是否已授予 App 麦克风权限。你可以前往手机 应用信息 > 权限 > 麦克风,检查“麦克风”权限是否已开启。
十二、点击开播按钮无法开播,提示“未登录”?
参考 完成登录, 确认已完成登录功能接入。