本文为您提供音视频通话场景Android端相关API的详细说明。
API概览
AUIRoomEngine
AUIRoomEngine API是音视频通话组件的无UI接口,如果现有的交互并不满足您的需求,您可以使用这套API根据您的业务需求自定义封装。
| API | 描述 | 
| login | 登录 | 
| logout | 登出 | 
| createRoom | 创建房间 | 
| join | 加入房间 | 
| leave | 离开房间 | 
| startPublish | 开始推流 | 
| stopPublish | 停止推流 | 
| addObserver | 添加房间事件回调 | 
| removerObserver | 移除房间事件监听回调 | 
| requestJoin | 邀请用户加入房间 | 
| cancelRequestJoin | 取消对其他用户加入房间的邀请 | 
| responseJoin | 响应加入房间的邀请 | 
| requestPublish | 邀请用户推流 | 
| cancelRequestPublish | 取消对其他用户推流的邀请 | 
| responsePublish | 响应推流的邀请 | 
| setRenderViewLayout | 设置指定用户预览视图的显示容器 | 
| sendCustomMessage | 针对某个指定用户发送自定义消息 | 
| sendGroupCustomMessage | 针对整个群组发送自定义消息 | 
| setCameraType | 设置摄像头类型 | 
| switchAudioOutput | 切换音频输出方式 | 
| switchCamera | 请求改变指定用户的摄像头开关状态 | 
| switchMicrophone | 请求改变指定用户的麦克风开关状态 | 
| getAudioOutputType | 获取音频播放输出的类型 | 
| getRoomId | 获取当前房间ID | 
| getUserId | 获取当前用户ID | 
| isInRoom | 判断当前状态是否在房间内 | 
| isPublishing | 判断当前状态是否在推流 | 
AUIRoomEngineObserve
AUIRoomEngineObserver对应的是回调事件类,您可以通过此回调,来监听自己感兴趣的回调事件。
| API | 描述 | 
| onCancelRequestJoin | 被取消加入房间的邀请的回调 | 
| onCancelRequestPublish | 被取消推流邀请的回调 | 
| onCustomMessageReceived | 收到自定义消息的回调 | 
| onError | 错误回调 | 
| onJoin | 加入房间的回调 | 
| onLeave | 离开房间的回调 | 
| onRequestJoin | 收到邀请加入房间的回调 | 
| onRequestPublish | 收到邀请推流的回调 | 
| onRequestSwitchCamera | 收到请求切换摄像头状态的回调 | 
| onRequestSwitchMic | 收到请求切换麦克风状态的回调 | 
| onResponseJoin | 收到被邀请者加入房间的响应回调 | 
| onResponsePublish | 收到被邀请者推流的响应回调 | 
| onUserAudioMuted | 收到用户音频流是否静音的状态回调 | 
| onUserOnline | 收到用户上线通知的回调 | 
| onUserOffline | 收到用户下线通知的回调 | 
| onUserStartPublish | 收到用户开始推流的回调 | 
| onUserStopPublish | 收到用户停止推流的回调 | 
| onUserVideoMuted | 收到用户视频流是否推黑屏帧的回调 | 
AUIRoomEngine
AUIRoomEngine API是音视频通话组件的无UI接口,如果现有的交互并不满足您的需求,您可以使用这套 API根据您的业务需求自定义封装。
addObserver:添加房间事件回调
void addObserver(AUIRoomEngineObserver observer);| 参数 | 类型 | 含义 | 
| observer | AUIRoomEngineObserver | 监听房间事件回调的observer | 
cancelRequestJoin:取消对其他用户加入房间的邀请
void cancelRequestJoin(String uid, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 取消邀请的动作结果回调 | 
cancelRequestPublish:取消对其他用户推流的邀请
void cancelRequestPublish(String uid, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 取消邀请的动作结果回调 | 
createRoom:创建房间
void createRoom(AUICreateRoomCallback callback);| 参数 | 类型 | 含义 | 
| callback | AUICreateRoomCallback | 创建房间的结果回调 | 
join:加入房间
void join(AUIRoomConfig config, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| config | AUIRoomConfig | 目标房间参数 | 
| callback | AUIActionCallback | 加入房间的动作回调 | 
leave:离开房间
void leave(AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| callback | AUIActionCallback | 离开房间的动作回调 | 
login:登录
void login(Context context, AUIRoomUserInfo info, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| context | Context | 上下文 | 
| info | AUIRoomUserInfo | 登录用户的参数 | 
| callback | AUIActionCallback | 登录的动作回调 | 
logout:登出
void logout();removerObserver:移除房间事件监听回调
void removerObserver(AUIRoomEngineObserver observer);| 参数 | 类型 | 含义 | 
| observer | AUIRoomEngineObserver | 被移除的observer监听回调 | 
requestJoin:邀请用户加入房间
void requestJoin(String uid, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 被邀请用户的ID | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 邀请的动作回调 | 
requestPublish:邀请用户推流
void requestPublish(String uid, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 被邀请用户的ID | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 邀请的动作回调 | 
responseJoin:响应加入房间的邀请
void responseJoin(String uid, String roomId, boolean agree, JSONObject extra);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| roomId | String | 目标房间ID | 
| agree | boolean | 是否同意加入 | 
| extra | JSONObject | JSON参数 | 
responsePublish:响应推流的邀请
void responsePublish(String roomId, String uid, boolean agree, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| roomId | String | 目标房间ID | 
| agree | boolean | 是否同意推流 | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 响应动作的回调 | 
sendCustomMessage:针对某个指定用户发送自定义消息
void sendCustomMessage(String uid, String json, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| json | String | JSON参数 | 
| callback | AUIActionCallback | 发送消息动作的回调 | 
sendGroupCustomMessage:针对整个群组发送自定义消息
void sendGroupCustomMessage(String json, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| json | String | JSON参数 | 
| callback | AUIActionCallback | 发送消息动作的回调 | 
setCameraType:设置摄像头类型
void setCameraType(AUIRoomEngineCameraType type, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| type | AUIRoomEngineCameraType | 摄像头类型 | 
| callback | AUIActionCallback | 发送消息动作的回调 | 
setRenderViewLayout:设置指定用户预览视图的显示容器
void setRenderViewLayout(String uid, View container, boolean isTop, boolean mirror);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID | 
| container | View | 目标用户预览视图的显示容器 | 
| isTop | boolean | 设置显示容器是否固定在视图层级最上层 | 
| mirror | boolean | 是否镜像显示用户预览视图 | 
startPublish:开始推流
void startPublish(boolean cameraOpen, boolean micOpen, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| cameraOpen | boolean | 是否推视频流 | 
| micOpen | boolean | 是否推音频流 | 
| callback | AUIActionCallback | 推流动作的回调 | 
stopPublish:停止推流
void stopPublish(AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| callback | AUIActionCallback | 停止推流动作的回调 | 
switchAudioOutput:切换音频输出类型
void switchAudioOutput(AUIAudioOutputType type);| 参数 | 类型 | 含义 | 
| type | AUIAudioOutputType | 音频输出类型枚举 | 
switchCamera:请求改变指定用户的摄像头开关状态
void switchCamera(String uid, boolean open, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID,支持传入自身ID | 
| open | boolean | 是否开启 | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 请求动作的回调 | 
switchMicrophone:请求改变指定用户的麦克风开关状态
void switchMicrophone(String uid, final boolean open, JSONObject extra, AUIActionCallback callback);| 参数 | 类型 | 含义 | 
| uid | String | 目标用户ID,支持传入自身ID | 
| open | boolean | 是否开启 | 
| extra | JSONObject | JSON参数 | 
| callback | AUIActionCallback | 请求动作的回调 | 
AUIRoomEngineObserver
AUIRoomEngineObserve对应的是回调事件类,您可以通过此回调,来监听自己感兴趣的回调事件。
onCancelRequestJoin:被取消加入房间的邀请的回调
void onCancelRequestJoin(String roomId, String sender, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 被取消邀请加入的房间ID | 
| sender | String | 发起取消邀请的用户 | 
| extra | JSONObject | JSON参数 | 
onCancelRequestPublish:被取消推流邀请的回调
void onCancelRequestPublish(String sender, JSONObject extra);| 参数 | 类型 | 含义 | 
| sender | String | 发起取消邀请的用户 | 
| extra | JSONObject | JSON参数 | 
onCustomMessageReceived:收到自定义消息的回调
void onCustomMessageReceived(String sender, String data);| 参数 | 类型 | 含义 | 
| sender | String | 发送消息的用户 | 
| data | String | JSON参数字符串 | 
onError:错误回调
void onError(int code, String msg);| 参数 | 类型 | 含义 | 
| code | int | 错误码 | 
| msg | String | 错误信息 | 
onJoin:加入房间的回调
void onJoin(String roomId, String uid);| 参数 | 类型 | 含义 | 
| roomId | String | 已加入的房间ID | 
| uid | String | 用户ID | 
onLeave:离开房间的回调
void onLeave();onRequestJoin:收到邀请加入房间的回调
void onRequestJoin(String roomId, String inviter, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| inviter | String | 邀请者 | 
| extra | JSONObject | JSON参数 | 
onRequestPublish:收到邀请推流的回调
void onRequestPublish(String roomId, String inviter, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| inviter | String | 邀请者 | 
| extra | JSONObject | JSON参数 | 
onRequestSwitchCamera:收到请求切换摄像头状态的回调
void onRequestSwitchCamera(String roomId, String requester, boolean off, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| requester | String | 发起请求者ID | 
| off | boolean | 是否关闭摄像头 | 
| extra | JSONObject | JSON参数 | 
onRequestSwitchMic:收到请求切换麦克风状态的回调
void onRequestSwitchMic(String roomId, String requester, boolean off, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| requester | String | 发起请求者ID | 
| off | boolean | 是否关闭麦克风 | 
| extra | JSONObject | JSON参数 | 
onResponseJoin:收到被邀请者加入房间的响应回调
void onResponseJoin(String roomId, String invitee, boolean agree, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| invitee | String | 被邀请者ID | 
| agree | boolean | 是否同意 | 
| extra | JSONObject | JSON参数 | 
onResponsePublish:收到被邀请者推流的响应回调
void onResponsePublish(String roomId, String invitee, boolean agree, JSONObject extra);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| invitee | String | 被邀请者ID | 
| agree | boolean | 是否同意 | 
| extra | JSONObject | JSON参数 | 
onUserAudioMuted:收到用户音频流是否静音的状态回调
void onUserAudioMuted(String uid, boolean muted);| 参数 | 类型 | 含义 | 
| uid | String | 用户ID | 
| muted | boolean | 是否静音 | 
onUserOffline:收到用户下线通知的回调
void onUserOffline(String roomId, String uid);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| uid | String | 用户ID | 
onUserOnline:收到用户上线通知的回调
void onUserOnline(String roomId, String uid);| 参数 | 类型 | 含义 | 
| roomId | String | 房间ID | 
| uid | String | 用户ID | 
onUserStartPublish:收到用户开始推流的回调
void onUserStartPublish(String uid);| 参数 | 类型 | 含义 | 
| uid | String | 用户ID | 
onUserStopPublish:收到用户停止推流的回调
void onUserStopPublish(String uid);| 参数 | 类型 | 含义 | 
| uid | String | 用户ID | 
onUserVideoMuted:收到用户视频流是否推黑屏帧的回调
void onUserVideoMuted(String uid, boolean muted);| 参数 | 类型 | 含义 | 
| uid | String | 用户ID | 
| muted | boolean | 是否推黑屏帧 |