注意:集成提示:
注意:这篇档介绍基于 UI 组件 的观众观看方式(含完整交互 UI)。若你需通过 Core SDK 自行搭建观众端界面,请参考 观众观看 (Core SDK)。
一、功能概览
·直播观看:清晰、流畅观看主播实时直播画面。
·互动连麦:申请连麦,与主播进行音视频互动。
·直播信息:查看直播间标题、简介,及在线观众列表等信息。
·直播互动:送礼物(有动画特效,主播接收提示)、点赞(有动画及实时统计)、发弹幕互动。
| 直播观看 | 互动连麦 | 直播信息 | 直播互动 |
| | | | |
二、步骤 1. 开通服务
参考 开通服务 文档开通「体验版」或「大规模直播版」套餐。
三、步骤 2. 代码集成
参考 准备工作 接入 TUILiveKit 。
四、步骤 3. 添加观众观看页面
在你的观众观看页 Activity 中 初始化添加 AudienceView 观众观看视图:
Kotlinimport android.os.Bundleimport android.util.Logimport androidx.appcompat.app.AppCompatActivityimport com.trtc.uikit.livekit.features.audienceview.AudienceViewimport com.trtc.uikit.livekit.features.audienceview.AudienceViewDefine.AudienceViewListenerimport io.trtc.tuikit.atomicxcore.api.live.LiveInfoclass AudienceActivity : AppCompatActivity() { lateinit var audienceView: AudienceView lateinit var listener: AudienceViewListener override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // 1. 创建 AudienceView audienceView = AudienceView(this) val roomId = "live_1236666" // 2. 初始化 AudienceView audienceView.init(this, roomId) // 3. (可选)添加 AudienceContainerView 事件监听 listener = object : AudienceViewListener { override fun onLiveEnded(roomId: String, ownerName: String, ownerAvatarUrl: String) { finishAndRemoveTask() } override fun onClickFloatWindow() { // 画中画按钮点击事件,你可以按照你的业务需求处理该事件,此处代码示例:点击画中画按钮后,将当前页面转换为画中画模式 enterPictureInPictureMode() } override fun onClickCloseButton(liveInfo: LiveInfo) { Log.i("TAG", "onClickCloseButton liveInfo: $liveInfo") finishAndRemoveTask() } } audienceView.addListener(listener) // 4. 将 AudienceContainerView 添加到界面 setContentView(audienceView) } override fun onDestroy() { // 5. (可选)若你添加了事件监听器,则需要在页面销毁时移除监听器 audienceView.removeListener(listener) super.onDestroy() }}
五、步骤 4. 跳转到观众观看页面
在你需要点击跳转到观众观看页时,可参考如下代码示例:
Kotlinfun startActivity(context: Context) { val intent = Intent(context, AudienceActivity::class.java) context.startActivity(intent)}
六、自定义观众观看页界面
·参考 观众核心页面 进行观众界面定制,在 AudienceView 中修改 UI 样式,添加你的业务组件。
·参考 调整视频直播挂件 进行视频位挂件定制,在 AudienceView 中修改视频位上的名称、头像挂件等 UI。
七、文案定制
TUILiveKit 使用 Android 通用的 XML 资源文件来管理 UI 所需的文案显示,你可以直接通过 XML 文件修改需要调整的文案:
八、图标定制
TUILiveKit 使用 Android 通用的 drawable 资源文件夹管理 UI 所需的图片资源,你可以通过替换资源文件快速修改自定义界面所需的图标,替换时请确保新的文件名称与原文件名称一致。
九、下一步
恭喜你,现在你已经成功集成了观众观看。接下来,你可以实现主播开播、直播列表等功能,可参考下表:
| 功能 | 描述 | 集成指引 |
| 主播开播 | 主播开播全流程功能,包括开播前的准备和开播后的各种互动。 | 主播开播 |
| 直播列表 | 展示直播列表界面和功能,包含直播列表,房间信息展示功能。 | 直播列表 |
| 礼物系统 | 实现自定义礼物素材配置、计费系统对接、PK 场景互动等功能。 | 礼物系统 |
十、观众选择视频连麦后,视频画面显示黑屏?
请前往应用信息 > 权限 > 相机,检查摄像头权限是否开启,可参考下图:
十一、观众发送弹幕时,直播间内其他观众看不到弹幕内容?
·原因 1: 先检查网络连接,确保观众设备网络正常。
·原因 2: 该观众被主播禁言,无法发送弹幕。
·原因 3:观众的弹幕内容涉及 关键词屏蔽,请确认观众发送的弹幕内容是否符合直播间规则。