TUILiveKit语聊房为纯音频直播场景提供了开箱即用的全功能界面。它支持快速搭建主播开播所需的核心能力,让您无需关注复杂的 UI 与麦位管理逻辑,即可高效集成语聊房开播流程。功能概览
开播前预览: 支持主播开播前设置房间名称、封面等个性化配置。
麦位管理: 支持上麦、下麦、禁麦、锁麦等多种麦位管理操作。
观众互动: 支持弹幕、礼物、点赞等丰富的直播互动形式。
直播间管理: 支持在线用户列表展示,以及直播间内的禁言、踢人等多种管理操作。
开播前预览 | 麦位管理 | 观众互动 | 直播间管理 |
![]() | ![]() | ![]() | ![]() |
快速接入
步骤 1:开通服务
步骤 2:代码集成
步骤 3:创建并展示语聊房视图控制器
TUIVoiceRoomViewController 组件已内置了语聊房场景的主播端完整 UI 与业务逻辑。您只需创建并展示该视图控制器,即可快速实现主播开播功能。推荐在您 App 的“开始直播”按钮点击事件中,执行以下逻辑:import TUILiveKitimport UIKit// YourViewController 代表您发起直播的视图控制器class YourViewController: UIViewController {// 响应“开始直播”按钮点击事件@objc func onStartVoiceRoomClicked() {// 1. 配置房间参数 (RoomParams)var params = RoomParams()params.maxSeatCount = 10 // 最大麦位数量params.seatMode = .applyToTake // 上麦模式// 2. 实例化语聊房控制器let roomId = "test_voice_room_id"// 2. 实例化语聊房控制器let voiceRoomVC = TUIVoiceRoomViewController(roomId: roomId, behavior: .prepareCreate, roomParams: params)voiceRoomVC.modalPresentationStyle = .fullScreen// 3. 跳转到语聊房页面present(voiceRoomVC, animated: true)}}
TUIVoiceRoomViewController参数说明:
参数名 | 类型 | 描述 |
roomId | string | 全局唯一的直播间 ID。 |
behavior | RoomBehavior | 进房行为: autoCreate:自动创建直播间并进房。prepareCreate: 先进入开播前预览页,用户点击“开始直播”后创建直播间并进房。join:观众进房。 |
roomParams | RoomParams? | 主播开播参数,详细参见下表。 |
RoomParams 参数说明:
参数名 | 类型 | 描述 |
maxSeatCount | Int | 直播间最大麦位数。 |
seatMode | TUISeatMode | 观众的上麦模式: applyToTake:观众需要申请,主播同意后上麦freeToTake: 观众自由上麦,无需主播同意。 |
自定义您的界面布局
TUILiveKit 提供了界面定制能力,以满足多样化的业务需求。您不仅可以选择不同的布局模板,还可以轻松替换界面中的文案和图标。直播布局模板选择
TUILiveKit 语聊提供 2 种布局样式,您可在主播开播前预览页的 UI 交互「布局」入口 选择合适样式:
布局概览:
名称 | 聊天室 | KTV |
描述 | 默认布局,页面只显示麦位网格图。 | 麦位网格图上方显示 KTV 歌曲播放器。 |
预览 | ![]() | ![]() |
文案修改
说明:
Apple Strings Catalog (.xcstrings) 是在 Xcode 15 中引入的本地化格式。它增强了开发者管理本地化字符串的方式,支持处理复数、设备特定变体等的结构化格式。这种格式正成为管理 iOS 和 macOS 应用程序本地化的推荐方法。

图标替换
TUILiveKit 使用
TUILiveKit.xcassets管理 UI 所需的图片资源,您可以借助 Xcode 图形化工具快速替换图标。
下一步
恭喜您,现在您已经成功集成了主播开播 。接下来,您可以实现观众观看、直播列表等功能,可参考下表:
常见问题
开播后没有声音?
请前往手机的设置 > App > 麦克风,检查麦克风权限是否开启。

点击开播按钮无法开播,提示“未登录”?





