StatusCode:librtc 已定义的 native 状态码镜像,范围主要为100xxx。cn.seastart.rtc.error:Android SDK 主动产生的102xxx分域错误码。
Int 并保留原值。native、后端、HTTP 库或流媒体厂商返回的错误不会被重新映射,因此调用方必须保留未知错误码的兜底处理。
librtc 状态码 StatusCode
旧文档中的
DeviceNotfound 已删除,100011 的当前枚举名是 NotFound。LibRtcStatusCode 也已删除,librtc 常量只由 StatusCode 公开。
SDK 公共与频道错误
RtcCommonErrorCode
RtcChannelErrorCode
采集错误
RtcCameraErrorCode
RtcMicErrorCode
RtcScreenErrorCode
流媒体与 HTTP 错误
RtcStreamErrorCode
RtcHttpErrorCode
错误目录查询
RtcErrorCatalog 只查询 SDK 自产的 102xxx 错误。对 librtc、后端和厂商透传码返回 null。
RtcErrorDescriptor 字段:
RtcErrorCatalog.all 返回当前 SDK 的全部自产错误描述。RtcErrorModule 领域及预留范围如下:
COMMON 与 CHANNEL 目前共享历史号段,但具体错误码全局唯一。
可调用 RtcErrorModule.owns(code) 判断一个 SDK 自产错误是否落在该领域的预留号码范围内;这不等同于判断错误是否已被 RtcErrorCatalog 正式定义。
回调处理建议
RTCClientEvent.onJoinFailed(channel, statusCode):处理入会失败。RTCResultListener.onFail(code):处理具体异步操作失败。RTCEngineEvent.onError(channelId, errorCode, message):处理 Engine 阻断操作和全局错误。RTCClientEvent.onDisconnected(channel, leaveReason, statusCode, message):处理频道不可恢复断连。
message。不要只依赖枚举或 RtcErrorCatalog,否则 SDK 尚未认识的新上游错误会丢失。