LiveAudienceStore

最近更新时间:2026-04-20 17:34:06

我的收藏

简介

LiveAudienceStore 提供了一套完整的观众管理 API,包括获取观众列表、设置管理员、踢出用户、禁言等功能。 通过该类,可以在直播间内实现观众管理功能。
重要:
使用 LiveAudienceStore.create 工厂方法创建 LiveAudienceStore 实例,需要传入有效的直播间 ID。
说明:
观众状态更新通过 liveAudienceState 发布者传递。订阅它以接收房间内观众数据的实时更新。

功能特性

观众列表:获取和管理当前房间的观众列表。
权限管理:设置和撤销管理员权限。
用户管理:踢出用户、禁言等操作。
事件监听:监听房主、管理员、观众加入/离开等事件。

可订阅数据

LiveAudienceState 的字段描述如下:
属性名
类型
描述
audienceList
StateFlow<List<LiveUserInfo>>
观众列表。
audienceCount
StateFlow<Int>
观众数量。
messageBannedUserList
StateFlow<List<LiveUserInfo>>
消息被禁言的用户列表。

API 列表

函数名
描述
创建观众管理实例。
观众事件回调。
观众事件回调。
获取观众列表。
设置管理员。
撤销管理员。
踢出用户。
禁言/解禁用户。

创建实例

LiveAudienceStore.create

创建观众管理实例。

观察状态和事件

addLiveAudienceListener

添加观众事件监听器
abstract fun addLiveAudienceListener(listener: LiveAudienceListener)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
listener
必填
监听器。

removeLiveAudienceListener

移除观众事件监听器
abstract fun removeLiveAudienceListener(listener: LiveAudienceListener)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
listener
必填
监听器。

观众管理

fetchAudienceList

获取观众列表
abstract fun fetchAudienceList(completion: CompletionHandler?)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
completion
必填
完成回调。

setAdministrator

设置管理员
abstract fun setAdministrator(userID: String?, completion: CompletionHandler?)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String?
必填
要设置为管理员的用户 ID。
completion
必填
完成回调。

revokeAdministrator

撤销管理员
abstract fun revokeAdministrator(userID: String?, completion: CompletionHandler?)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String?
必填
要撤销管理员权限的用户 ID。
completion
必填
完成回调。

kickUserOutOfRoom

将用户踢出房间
abstract fun kickUserOutOfRoom(userID: String?, completion: CompletionHandler?)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String?
必填
要踢出的用户 ID。
completion
必填
完成回调。

disableSendMessage

禁用/解禁用户发送消息
abstract fun disableSendMessage(
userID: String?,
isDisable: Boolean,
completion: CompletionHandler?
)
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String?
必填
目标用户 ID。
isDisable
Boolean
必填
true 表示禁用发送消息,false 表示解禁。
completion
必填
完成回调。

数据结构

Role

用户角色。
枚举值
说明
OWNER
房主。
ADMIN
管理员。
GENERAL_USER
普通用户。

LiveUserInfo

直播用户信息。
属性
类型
说明
userID
String
用户唯一标识 ID。
userName
String
用户名称。
avatarURL
String
用户头像 URL。

LiveAudienceState

直播观众状态。
属性
类型
说明
audienceList
StateFlow<List<LiveUserInfo>>
观众列表。
audienceCount
StateFlow<Int>
观众数量。
messageBannedUserList
StateFlow<List<LiveUserInfo>>
消息被禁言的用户列表。

LiveAudienceListener

直播观众事件。
此监听器用于接收直播间内全角色(房主、管理员、观众)的动态事件。
方法
onOwnerJoined: 房主加入事件。
open fun onOwnerJoined(owner: LiveUserInfo) {}
参数名
类型
说明
owner
加入的房主信息。
onOwnerLeft: 房主离开事件。
open fun onOwnerLeft(owner: LiveUserInfo) {}
参数名
类型
说明
owner
离开的房主信息。
onAdminJoined: 管理员加入事件。
open fun onAdminJoined(admin: LiveUserInfo) {}
参数名
类型
说明
admin
加入的管理员信息。
onAdminLeft: 管理员离开事件。
open fun onAdminLeft(admin: LiveUserInfo) {}
参数名
类型
说明
admin
离开的管理员信息。
onAudienceJoined: 观众加入事件。
open fun onAudienceJoined(audience: LiveUserInfo) {}
参数名
类型
说明
audience
加入的观众信息。
onAudienceLeft: 观众离开事件。
open fun onAudienceLeft(audience: LiveUserInfo) {}
参数名
类型
说明
audience
离开的观众信息。
onAudienceMessageDisabled: 观众被禁止发言事件。
open fun onAudienceMessageDisabled(audience: LiveUserInfo, isDisable: Boolean) {}
参数名
类型
说明
audience
观众信息。
isDisable
Boolean
是否被禁止发言。