API | 描述 |
创建 SeatGridView 对象,支持代码创建和 xml 加载两种方式。 | |
打开本地麦克风 | |
关闭本地麦克风 | |
暂停发布本地的音频流 | |
恢复发布本地的音频流 | |
主播创建直播间并开始推流 | |
主播停止推流并销毁直播间 | |
观众加入某个主播的直播间 | |
观众离开某个主播的直播间 | |
更新房间麦位模式 | |
主播响应上麦申请/观众响应上麦邀请 | |
主播取消上麦邀请/观众取消上麦申请 | |
上麦 | |
移麦 | |
下麦 | |
主播邀请用户上麦 | |
主播踢用户下麦 | |
主播锁定麦位(包括位置锁定、音频状态锁定和视频状态锁定) | |
主播设置麦位列表的布局模式 | |
为麦位视图设置适配器 | |
设置事件回调 | |
移除事件回调 |
public SeatGridView(Context context)
参数 | 类型 | 含义 |
context | Context | Android 上下文对象 |
void startMicrophone(ActionCallback callback)
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
void stopMicrophone()
void muteMicrophone()
void unmuteMicrophone(ActionCallback callback)
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
void startVoiceRoom(RoomInfo roomInfo, GetRoomInfoCallback callback)
参数 | 类型 | 含义 |
roomInfo | RoomInfo | 创建直播间的信息 |
callback | ActionCallback | 操作的回调 |
void stopVoiceRoom(ActionCallback callback)
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
void joinVoiceRoom(String roomId, GetRoomInfoCallback callback)
参数 | 类型 | 含义 |
roomId | String | 直播间 ID |
callback | ActionCallback | 操作的回调 |
void leaveVoiceRoom(ActionCallback callback)
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
void updateRoomSeatMode(SeatMode seatMode, ActionCallback callback)
参数 | 类型 | 含义 |
seatMode | SeatMode | FREE_TO_TAKE:自由上麦模式,观众可以自由上麦,无需申请; APPLY_TO_TAKE:申请上麦模式,观众上麦需要主播同意后才能上麦。 |
callback | ActionCallback | 操作的回调。 |
void responseRemoteRequest(String userId, boolean agree, ActionCallback callback)
参数 | 类型 | 含义 |
userId | String | 响应用户的用户 ID,如果当前身份是观众,ID 可填空 |
agree | boolean | 是否接受请求,true:同意请求,false:拒绝请求 |
callback | ActionCallback | 操作的回调 |
void cancelRequest(String userId, ActionCallback callback)
参数 | 类型 | 含义 |
userId | String | 取消的用户 ID,如果当前身份是观众,ID 可填空 |
callback | ActionCallback | 操作的回调 |
void takeSeat(int index, int timeout, VoiceRoomDefine.RequestCallback callback)
参数 | 类型 | 含义 |
index | int | 上麦的麦位编号 |
timeout | int | 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发超时回调 |
callback | ActionCallback | 操作的回调 |
void moveToSeat(int index, ActionCallback callback)
参数 | 类型 | 含义 |
index | int | 需要移动过去的麦位编号 |
callback | ActionCallback | 操作的回调 |
void leaveSeat(ActionCallback callback)
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
void takeUserOnSeatByAdmin(int index, String userId, int timeout, VoiceRoomDefine.RequestCallback callback)
参数 | 类型 | 含义 |
index | int | 被邀请的麦位编号 |
userId | String | 被邀请的用户 ID |
timeout | int | 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发超时回调 |
callback | VoiceRoomDefine.RequestCallback | 操作的回调 |
void kickUserOffSeatByAdmin(String userId, ActionCallback callback)
参数 | 类型 | 含义 |
userId | String | 被踢下麦的用户 ID |
callback | ActionCallback | 操作的回调 |
void lockSeat(int seatIndex, TUIRoomDefine.SeatLockParams params, ActionCallback callback)
参数 | 类型 | 含义 |
seatIndex | int | 需要锁定麦位的麦位编号 |
params | TUIRoomDefine.SeatLockParams | 锁麦参数。详情参见:TUIRoomDefine.SeatLockParams |
callback | ActionCallback | 操作的回调 |
void setLayoutMode(LayoutMode layoutModel, SeatViewLayoutConfig layoutConfig)
参数 | 类型 | 含义 |
layoutModel | 麦位列表的布局模式,支持元素布局、宫格布局、纵向布局、自定义布局。 | |
layoutConfig | 布局配置信息,只有自定义布局模式下才生效 |
void setSeatViewAdapter(VoiceRoomDefine.SeatViewAdapter adapter)
参数 | 类型 | 含义 |
adapter | 麦位视图适配器 |
void addObserver(SeatGridViewObserver observer)
参数 | 类型 | 含义 |
observer | 核心组件的回调对象 |
void removeObserver(SeatGridViewObserver observer)
参数 | 类型 | 含义 |
observer | 核心组件的回调对象 |
类型 | 描述 |
麦位列表的布局模式,支持元素布局、宫格布局、纵向布局、自定义布局 | |
麦位布局的对齐方式 | |
请求类型(申请上麦和邀请上麦) | |
麦位布局大小 | |
麦位布局配置信息 | |
麦位布局中每一行的布局配置信息 | |
请求回调 | |
麦位视图适配器 |
类型 | 描述 |
FOCUS | 元素布局 |
GRID | 宫格布局 |
VERTICAL | 纵向布局 |
FREE | 自定义布局 |
类型 | 说明 |
START | 麦位靠近起始位置 |
END | 麦位靠近结束位置 |
CENTER | 麦位靠近中间位置 |
SPACE_BETWEEN | 第一个麦位之前和最后一个麦位之后不留空间,其它麦位之间均匀分布剩余空间 |
SPACE_AROUND | 第一个麦位之前和最后一个麦位之后分布一半空间,其它麦位之间均匀分布剩余空间 |
SPACE_EVENLY | 在所有麦位之间均匀分布剩余空间 |
类型 | 描述 |
APPLY_TO_TAKE_SEAT | 申请上麦 |
INVITE_TO_TAKE_SEAT | 邀请上麦 |
类型 | 描述 |
width | 布局宽度 |
height | 布局高度 |
类型 | 描述 |
rowConfigs | |
rowSpacing | 麦位布局行间距 |
类型 | 描述 |
count | 此行显示的麦位数量 |
seatSpacing | 此行中每个麦位水平间距(仅当对齐方式为 START、END 和 CENTER 时生效) |
seatSize | 此行中麦位布局大小 |
alignment |
API | 说明 |
请求被接受 | |
请求被拒绝 | |
请求被取消 | |
请求超时 | |
请求异常 |
API | 说明 |
创建单个麦位布局时回调。 | |
更新麦位视图时回调。 | |
更新用户音量时回调。 |
void onAccepted(TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
userInfo | UserInfo | 响应当前请求的用户信息 |
void onRejected(TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
userInfo | UserInfo | 响应当前请求的用户信息 |
void onCancelled(TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
userInfo | UserInfo | 取消当前请求的用户信息 |
void onTimeout(TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
userInfo | UserInfo | 发起请求的用户信息 |
void onError(TUIRoomDefine.UserInfo userInfo, TUICommonDefine.Error error, String message);
参数 | 类型 | 描述 |
userInfo | UserInfo | 发起请求的用户信息 |
error | TUICommonDefine.Error | 错误码 |
message | String | 错误信息 |
View createSeatView(SeatGridView seatGridView, TUIRoomDefine.SeatInfo seatInfo);
参数 | 类型 | 描述 |
seatGridView | SeatGridView | 语聊房核心组件 |
seatInfo | SeatInfo | 麦位信息 |
void updateSeatView(SeatGridView seatGridView, TUIRoomDefine.SeatInfo seatInfo, View seatView);
参数 | 类型 | 描述 |
seatGridView | SeatGridView | 语聊房核心组件 |
seatInfo | SeatInfo | 麦位信息 |
seatView | View | 当前更新的麦位视图 |
void updateUserVolume(SeatGridView seatGridView, int volume, View seatView);
参数 | 类型 | 描述 |
seatGridView | SeatGridView | 语聊房核心组件 |
volume | int | 音量大小 |
seatView | View | 当前音量变化的麦位布局视图 |
函数列表 | 说明 |
收到房间销毁的事件 | |
收到被踢出房间的事件 | |
收到申请上麦/邀请上麦的请求事件 | |
申请麦位/邀请上麦请求被取消的事件 | |
收到用户被踢下麦事件。 | |
用户音频状态发生变化事件。 | |
麦位视图被点击事件。 |
void onRoomDismissed(String roomId);
参数 | 类型 | 描述 |
roomId | String | 房间 ID |
void onKickedOutOfRoom(String roomId, TUIRoomDefine.KickedOutOfRoomReason reason, String message);
参数 | 类型 | 描述 |
roomId | String | 房间 ID |
reason | KickedOutOfRoomReason | 被踢出原因 |
message | String | 被踢出的描述 |
void onSeatRequestReceived(VoiceRoomDefine.RequestType type, TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
type | 请求类型(申请上麦,邀请上麦) | |
userInfo | UserInfo | 发送请求的用户信息 |
void onSeatRequestCancelled(VoiceRoomDefine.RequestType type, TUIRoomDefine.UserInfo userInfo);
参数 | 类型 | 描述 |
type | 请求类型(申请上麦,邀请上麦) | |
userInfo | UserInfo | 取消请求的用户信息 |
void onKickedOffSeat(UserInfo userInfo);
参数 | 类型 | 描述 |
userInfo | UserInfo | 操作踢人的主播的用户信息 |
void onUserAudioStateChanged(UserInfo userInfo, boolean hasAudio, TUIRoomDefine.ChangeReason reason);
参数 | 类型 | 描述 |
userInfo | UserInfo | 用户信息 |
hasAudio | boolean | 是否有音频流 |
reason | ChangeReason | 音频流发生变化原因 |
void onSeatViewClicked(View seatView, TUIRoomDefine.SeatInfo seatInfo);
参数 | 类型 | 描述 |
seatView | View | 当前被点击的麦位视图对象 |
seatInfo | SeatInfo | 麦位信息 |
本页内容是否解决了您的问题?