提交工单
咨询集成、功能及报价等问题
登录房间成功后,SDK 会自动拉流播放直播。用户无需手动触发拉流。
但如果想获取播放流状态,需要进行代理设置。
参考文档:快速开始-初始化
调用如下 API 设置 ZegoAudioLivePlayerDelegate 代理对象。设置代理对象失败,会导致 App 收不到相关回调
/**
* 设置 ZegoAudioLivePlayerDelegate 代理对象。
* 登录房间前,务必要设置代理对象
* 设置代理对象失败,会导致 App 收不到相关回调
*
* @param playerDelegate 实现 ZegoAudioLivePlayerDelegate 接口的对象实例
*/
public void setAudioPlayerDelegate(ZegoAudioLivePlayerDelegate playerDelegate);
调用如下 API 登录房间。无论是手动/自动发布直播模式,登录房间后,SDK 均会自动拉流,无需用户手动操作
/**
* 登录房间。
*
* @param roomID 房间 ID,App 需保证其唯一性
* @param completionCallback 登录完成回该实例的 onLoginCompletion 方法
*
* @return true:登录成功,false:登录失败
*/
public boolean loginRoom(String roomID, ZegoLoginAudioRoomCallback completionCallback);
常见登录错误码参考如下:
错误码 | 错误原因 |
---|---|
stateCode = 0 | 登录成功 |
stateCode = 1042 | 网络连不上。请检查当前网络是否正常 |
stateCode = 1048677 | 测试环境或者正式环境设置错误。如果使用测试环境, 请确保在 initWithAppId 之前设置 setUseTestEnv(true) |
stateCode = 268435457 | 超出房间能容纳的最大连接数 |
自动播放开始后,开发者需在如下回调中处理播放状态和流信息
/**
* 播放状态更新回调。
* 调用 [ZegoAudioRoomApi (Player) -setAudioPlayerDelegate] 设置代理对象成功后,客户端才能收到此通知
*
* @param stateCode 状态码。0 表示无错误
* @param stream 流信息
*/
public void onPlayStateUpdate(int stateCode, ZegoAudioStream stream);
常见播放错误码参考如下:
错误码 | 错误原因 |
---|---|
stateCode = 0 | 直播成功 |
stateCode = 3 | 直播遇到严重错误。stateCode=1,2,3 这三个基本不会出现 |
stateCode = 4 | 创建直播流失败。请确认 userid,username 是否为空 |
stateCode = 5 | 获取流信息失败 |
stateCode = 6 | 流不存在。请检查:(1) AppID 是否相同,要保证一致; (2) 是否同时开启测试环境或同时在正式环境下 |
stateCode = 7 | 媒体服务器连接失败。请确认推流端是否正常推流、正式环境和测试环境是否设置都是同一个、网络是否正常 |
stateCode = 8 | DNS 解析失败 |
stateCode = 9 | 未 loginRoom 就直接 play/publish |
stateCode = 10 | 逻辑服务器网络错误(网络断开约 3 分钟时会返回该错误) |
调用如下 API 退出房间。无论是手动/自动发布直播模式,退出房间后,会停止所有的拉流,无需用户手动停止拉流
/**
* 退出房间。
* 退出房间成功会停止所有的推拉流
*
* @return true:成功,false:失败
*/
public boolean logoutRoom();
联系我们
文档反馈