监听接口

接口名接口描述
ICloudCoreManagerStatusListener初始化监听
IPlayerListener拉流播放状态监听
IStreamListener视频流状态监听
StreamProfileChangeCallBack清晰度切换成功监听
SetAutoRecycleTimeCallback无操作回收服务时长监听
ScreenShotCallBack截图到本地监听
LocationEventListener定位监听
IMessageReceiver消息透传监听
IUploadFileCallBack文件上传监听
IClipBoardListener云机剪切板监听

初始化监听

接口:ICloudCoreManagerStatusListener
方法:
方法名参数描述
onPrepared()初始化成功回调

拉流播放状态监听

接口:IPlayerListener
方法:
方法名参数描述
onPlaySuccess(videoStreamProfileId: Int)videoStreamProfileId: 当前云手机画面的清晰度,首帧渲染到画面时触发该回调播放成功
onError(code: Int, msg: String)code:错误码; msg:错误内容错误信息
onWarning(code: Int, msg: String)code:警告码; msg:警告内容警告信息
onNetworkChanged(int type)type: -1: 网络连接类型未知; 0: 网络连接已断开; 1: 网络类型为 LAN; 2: 网络类型为 Wi-Fi(包含热点); 3: 网络类型为 2G 移动网络; 4: 网络类型为 3G 移动网络; 5: 网络类型为 4G 移动网络; 6: 网络类型为 5G 移动网络网络连接类型和状态切换回调
onServiceInit(extras: Map<String, Any>?)extras:保留参数,用于透传一些额外参数加入房间前回调,用于获取并初始化各个功能服务,例如设置各种事件监听回调
networkQualityRtt(rtt: Int)rtt:数据在客户端和服务器之间来回往返所需的时间加入房间并发布或订阅流后, 以每 2 秒一次的频率,报告本地用户和已订阅的远端用户的上下行网络质量信息
onMultiCloudPhoneJoin(padCode: String)padCode: 云机标识群控状态下云机加入群控回调
onMultiCloudPhoneLeave(padCode: String)padCode: 云机标识群控状态下云机离开群控回调

视频流状态监听

接口:IStreamListener
方法:
方法名参数描述
onFirstAudioFrame(uid: String)uid:远端实例视频流 ID订阅视频流到收到音频首帧回调
onFirstRemoteVideoFrame(uid: String, width: Int, height: Int)uid:远端实例视频流 ID
width:云机画面宽度
height:云机画面高度
订阅视频流到收到视频首帧回调
onVideoSizeChanged(uid: String, width: Int, height: Int)uid:远端实例视频流 ID
width:云机画面宽度
height:云机画面高度
云机画面宽高改变时回调
onStreamPaused()调用 pause(),暂停播放后的回调
onStreamConnectionStateChanged(state: Int)state@ConnectionState: 视频流连接状态视频流连接状态变更回调
onScreenRotation(rotationType: String)rotationType: TYPE_LANDSCAPE(横屏)、 TYPE_PORTRAIT(竖屏)云机屏幕发生旋转回调

清晰度切换成功监听

接口:StreamProfileChangeCallBack
方法:
方法名参数描述
onVideoStreamProfileChange(isSuccess: Boolean, from: String, current: String)isSuccess: (清晰度是否成功切换) from: (切换前的清晰度) current: (当前的清晰度)清晰度切换回调

无操作回收服务时长监听

接口:SetAutoRecycleTimeCallback
方法:
方法名参数描述
onResult(autoRecycleTime: Int)autoRecycleTime:无操作回收服务时长 单位 s无操作时长达到设置的时长后回调该方法

截图到本地监听

接口:ScreenShotCallBack
方法:
方法名参数描述
onScreenShot(bitmap: Bitmap)bitmap:截取云机屏幕的位图调用截图到本地后回调

定位监听

接口:LocationEventListener
方法:
方法名参数描述
onReceivedRemoteLocationRequest(requestOptions: RequestOptions)options:位置请求选项在手动定位模式下,收到云机实例位置请求的回调
onRemoteLocationRequestEnded()在手动定位模式下,云机实例定位请求结束
onSentLocalLocation(locationInfo: LocationInfo)locationInfo:位置信息在自动定位模式下,向云机实例发送本地设备位置信息后的回调
onRemoteLocationUpdated(locationInfo: LocationInfo)locationInfo:位置信息云机实例位置更新后的回调

消息透传监听

接口:IMessageReceiver
方法:
方法名参数描述
onReceiveMessage(message: String)message:透传消息体云机发出的透传消息

文件上传监听

接口:IUploadFileCallBack
方法:
方法名参数描述
onUpdateStart()上传开始
onUpdateByteChange(totalByte: Long, updateByte: Long)totalByte:文件总大小 updateByte:当前上传大小 单位:字节文件上传大小发生改变
onUpdateProgressChange(progress: Int)progress:上传进度文件当前上传进度改变 0 ~ 100
onUpdateSuccess(mapData: Map<String, String>)mapData:预留数据文件上传成功
onUpdateFail(e: Throwable?)e:错误信息文件上传失败
onUpdateEnd()文件上传结束
onError(code: Int, msg: String)code:错误码 msg:错误信息文件上传失败 除文件上传错误的其他错误信息

云机剪切板监听

接口:IClipBoardListener
方法:
方法名参数描述
onClipBoardMessageReceived(data: String)data:云机同步的剪贴板数据云机同步的剪贴板数据