本文为您介绍Android端语聊房场景的API说明。
API概览
分类 | API | 说明 |
ARTCVoiceRoomEngine 语聊房引擎 | 初始化 | |
释放实例 | ||
添加回调 | ||
移除回调 | ||
房间model | ||
是否房主 | ||
是否在语聊房里 | ||
进入语聊房 | ||
离开语聊房 | ||
解散语聊房(仅限主播) | ||
是否已上麦 | ||
直接上麦 | ||
下麦 | ||
申请上麦 | ||
打开/关闭一个自己的麦克风 | ||
切换自己的音频输出(麦克风or听筒) | ||
开关耳返 | ||
设置音频采集音量,默认50,可调节[0~100] | ||
开始或停止播放音效 | ||
设置音效音量 | ||
开始或停止播放背景音乐 | ||
设置播放背景音乐音量 | ||
设置变声类型 | ||
设置混响 | ||
发送弹幕 | ||
发送信令 | ||
ARTCVoiceRoomEngineDelegate 语聊房引擎回调 | 自己进入房间 | |
自己离开房间 | ||
有人进入语聊房了 | ||
有人离开语聊房了 | ||
自己被踢出语聊房了 | ||
语聊房解散了 | ||
房间内在线人数发生了变化 | ||
有人上麦 | ||
有人下麦 | ||
麦上用户麦克风打开/关闭 | ||
麦上用户是否正在说话中 | ||
网络出现了变化 | ||
自己背景音乐播放状态改变(开始/结束/失败) | ||
自己收到了弹幕 | ||
发生了错误 |
ARTCVoiceRoomEngine详情
init
API含义:初始化
使用示例:
void init(Context context, ClientMode mode, String appId, UserInfo userInfo, IMNewToken token, ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
context | Context | android环境上下文 |
mode | ClientMode | 客户端模式 |
appId | String | 实时音视频app id |
userInfo | UserInfo | 用户个人信息 |
callback | ActionCallback | 操作结果回调 |
release
API含义:释放引擎实例
使用示例:
void release();
参数详情:
无
addObserver
API含义:添加房间事件回调
使用示例:
void addObserver(ARTCVoiceRoomEngineDelegate callback);
参数详情:
参数 | 类型 | 含义 |
callback | ARTCVoiceRoomEngineDelegate | 要添加的监听者 |
removeObserver
API含义:移除房间事件回调
使用示例:
void removeObserver(ARTCVoiceRoomEngineDelegate callback);
参数详情:
参数 | 类型 | 含义 |
callback | ARTCVoiceRoomEngineDelegate | 需要移除的监听者 |
getRoomInfo
API含义:返回房间信息
使用示例:
RoomInfo getRoomInfo();
参数详情:
无
isAnchor
API含义:是否房主
使用示例:
boolean isAnchor();
参数详情:
无
isJoinRoom
API含义:是否在语聊房里
使用示例:
boolean isJoinRoom();
参数详情:
无
joinRoom
API含义:进入语聊房
使用示例:
void joinRoom(RoomInfo roomInfo, RtcInfo rtcInfo, ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
roomInfo | RoomInfo | 待加入房间的信息 |
rtcInfo | RtcInfo | 加入rtc频道的必要信息 |
callback | ActionCallback | 操作结果回调 |
leaveRoom
API含义:离开语聊房
使用示例:
void leaveRoom(ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作结果回调 |
dismissRoom
API含义:解散语聊房(仅限主播)
使用示例:
void dismissRoom(ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作结果回调 |
isJoinMic
API含义:是否已上麦
使用示例:
boolean isJoinMic();
参数详情:
无
joinMic
API含义:直接上麦
使用示例:
void joinMic(MicInfo micInfo, ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
micInfo | MicInfo | 上麦的必要信息 |
callback | ActionCallback | 操作结果回调 |
leaveMic
API含义:下麦
使用示例:
void leaveMic(ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作结果回调 |
requestMic
API含义:申请上麦
使用示例:
void requestMic(ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作结果回调 |
switchMicrophone
API含义:打开/关闭一个自己的麦克风
使用示例:
void switchMicrophone(boolean open);
参数详情:
参数 | 类型 | 含义 |
open | boolean | 是否打开 |
setAudioOutputType
API含义:切换自己的音频输出(麦克风 or 听筒)
使用示例:
void setAudioOutputType(AudioOutputType type);
参数详情:
参数 | 类型 | 含义 |
type | AudioOutputType | 类型(麦克风或听筒) |
enableEarBack
API含义:开关耳返
使用示例:
void enableEarBack(boolean enable);
参数详情:
参数 | 类型 | 含义 |
enable | boolean | 是否开启 |
setRecordingVolume
API含义:设置音频采集音量,默认50,可调节[0~100]
使用示例:
void setRecordingVolume(int volume);
参数详情:
参数 | 类型 | 含义 |
volume | int | 音量,默认50,可调节[0~100] |
playAudioEffect
API含义:开始或停止播放音效
使用示例:
int playAudioEffect(AudioEffect effect);
参数详情:
参数 | 类型 | 含义 |
effect | AudioEffect | 音效封装类,传null停止播放 |
setAudioEffectVolume
API含义:设置音效音量
使用示例:
void setAudioEffectVolume(int soundId, int volume);
参数详情:
参数 | 类型 | 含义 |
soundId | int | 音效Id |
volume | int | 音量,默认50,可设置[0~100] |
setBackgroundMusic
API含义:开始或停止播放背景音乐
使用示例:
void setBackgroundMusic(Music music);
参数详情:
参数 | 类型 | 含义 |
music | Music | 音乐封装类,传null停止播放 |
setAccompanyVolume
API含义:设置播放背景音乐音量
使用示例:
void setAccompanyVolume(int volume);
参数详情:
参数 | 类型 | 含义 |
volume | int | 音量,默认50,可设置[0~100] |
setVoiceChange
API含义:设置变声类型
使用示例:
void setVoiceChange(VoiceChange change);
参数详情:
参数 | 类型 | 含义 |
change | VoiceChange | 变声类型 |
setAudioMixSound
API含义:设置混响类型
使用示例:
void setAudioMixSound(MixSound mix);
参数详情:
参数 | 类型 | 含义 |
mix | MixSound | 混响类型 |
sendTextMessage
API含义:发送评论
使用示例:
void sendTextMessage(String message, ActionCallback callback);
参数详情:
参数 | 类型 | 含义 |
message | String | 评论内容 |
callback | ActionCallback | 操作结果回调 |
sendCommand
API含义:发送信令
使用示例:
public func sendCommand(type: ARTCRoomMessageType, data:[AnyHashable: Any]? = nil , userId: String? = nil, completed: ARTCRoomCompleted? = nil)
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 信令发送的目标用户 |
type | int | 信令消息类型 |
protocol | String | 信令协议内容 |
callback | ActionCallback | 操作结果回调 |
ARTCVoiceRoomEngineDelegate详情
onJoin
回调含义:自己加入房间的通知
使用示例:
void onJoin(String roomId, String uid);
参数详情:
参数 | 类型 | 含义 |
roomId | String | 房间id |
uid | String | 用户id |
onLeave
回调含义:自己离开房间的通知
使用示例:
void onLeave();
参数详情:
无
onJoinedRoom
回调含义:有人进入语聊房了
使用示例:
void onJoinedRoom(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
onLeavedRoom
回调含义:有人离开语聊房了
使用示例:
void onLeavedRoom(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
onKickoutRoom
回调含义:自己被踢出语聊房了
使用示例:
void onKickOutRoom();
参数详情:
无
onDismissRoom
回调含义:语聊房解散了
使用示例:
void onDismissRoom(String commander);
参数详情:
参数 | 类型 | 含义 |
commander | String | 发起解散操作的用户id |
onMemberCountChanged
回调含义:房间内在线人数发生了变化
使用示例:
void onMemberCountChanged(int count);
参数详情:
参数 | 类型 | 含义 |
count | Int | 人数 |
onJoinedMic
回调含义:有人上麦
使用示例:
void onJoinedMic(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
onLeavedMic
回调含义:有人下麦
使用示例:
void onLeavedMic(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
onMicUserMicrophoneChanged
回调含义:麦上用户麦克风打开/关闭
使用示例:
void onMicUserMicrophoneChanged(UserInfo user, boolean open);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
open | boolean | 是否开启 |
onMicUserSpeakStateChanged
回调含义:麦上用户是否正在说话中
使用示例:
void onMicUserSpeakStateChanged(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 说话状态变化的用户 |
onNetworkStateChanged
回调含义:网络出现了变化
使用示例:
void onNetworkStateChanged(UserInfo user);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
onAccompanyStateChanged
回调含义:自己伴奏播放状态改变(开始/结束/失败)
使用示例:
void onAccompanyStateChanged(AccompanyPlayState state);
参数详情:
参数 | 类型 | 含义 |
state | AccompanyPlayState | 播放状态 |
onReceivedTextMessage
回调含义:自己收到了弹幕
使用示例:
void onReceivedTextMessage(UserInfo user, String text);
参数详情:
参数 | 类型 | 含义 |
user | UserInfo | 操作的用户 |
text | String | 弹幕信息 |
onError
回调含义:发生了错误
使用示例:
void onError(int code, String msg);
参数详情:
参数 | 类型 | 含义 |
error | int | 错误码 |
msg | String | 错误信息 |