跳到主要内容
版本:v1.3.1

错误码速查

本页按公共、iOS 和 Android 三部分汇总错误码,便于快速检索。

跨平台状态、事件和离线模型状态的完整处理规则见运行状态与事件处理契约。


公共错误码​

以下错误码在 iOS 和 Android 两端同码同义,App 处理方式完全一致。

错误模型​

iOS — TmkTranslationError(枚举关联值,属性 code/constantName/message/category/chineseDescription/englishDescription/underlyingError/actualErrorCode/actualErrorMessage/actualErrorDomain)。

Android — TmkTranslationException(类,属性 errorCode/actualErrorCode/actualErrorMessage/actualErrorDomain/category/constantName/chineseDescription/englishDescription)。

两端主错误码均通过 error.code(iOS)或 exception.errorCode(Android)获取,actualErrorCode / actualErrorMessage 仅用于脱敏后的诊断排障。

统一错误码表​

codeconstantName分类说明处理契约恢复策略
2001101SDK_NOT_INITIALIZEDstateSDK 未初始化,调用方在未执行 sdkInit 前就使用了 SDK 能力。App 停止当前流程并提示用户"SDK 未初始化,请重新进入页面"。提示用户操作
2001102AUTHENTICATION_FAILEDcaller在线鉴权失败(token 校验失败/授权头格式非法/token 非法),或离线 License 鉴权不通过(过期/签名无效/scope 未授权等)。在线:App 弹窗提示"鉴权失败,请重新鉴权";离线:引导用户联网重试或检查账号权限。提示用户操作
2001103ROOM_CREATION_FAILEDnetwork在线房间(dialog/mono-dialog)创建流程中的非超时失败。App 弹窗提示"房间创建失败,是否重试?";连续失败 3 次后弹窗提示离开,记录诊断日志。提示用户重试
2001104CHANNEL_CREATION_FAILEDrtcRtm在线通道创建失败,或离线通道组装失败。在线:App 弹窗提示"通道创建失败,是否重新创建?";离线:提示"通道初始化失败,是否重新初始化?"并检查模型资源。提示用户重试
2001105ENGINE_NOT_SUPPORTEDrtcRtm当前 SDK、账号或配置不支持该引擎能力。App 弹窗提示"当前引擎能力不支持",停止当前流程。不可恢复
2001106INVALID_CONFIGURATIONcaller配置非法,包括语言、声道、音色、appId、channel 等参数不合法。App 弹窗提示具体配置错误项,引导用户修正后重试;不要用旧配置自动重复重试。提示用户操作
2001107NETWORK_UNAVAILABLEnetwork网络不可用;也可能出现在模型下载、鉴权、语言列表、建房或建通道的超时场景。Android 将底层 I/O 取消型超时统一映射为此码。启动期:App 提示"网络不可用,请检查网络"并提供重试按钮;运行期:App 仅通过 onStateChanged(reconnecting) 显示"网络恢复中…"横幅,不弹窗,SDK 自动重连。App 自动重试(SDK 自动重连)
2001108AUDIO_PROCESSING_ERRORaudio音频采集、播放、PCM 推流或音频会话异常。App 停止录音/播放,弹窗提示"音频处理异常,请重新创建对话(在线)或重新初始化(离线)"。提示用户重试
2001109TTS_SYNTHESIS_ERRORrtcRtm在线或离线 TTS 合成异常。单句失败:App 做 Toast 提示"语音合成失败",不弹窗、不中断通道;连续 3 句失败或通道级:App 弹窗提示"语音合成异常,是否重建通道?"。单句:App 自动重试;通道级:提示用户重试
2001110TRANSLATION_ERRORrtcRtm在线翻译引擎异常,或离线 ASR 识别/MT 翻译阶段失败。单句失败:App 做 Toast 提示"翻译失败",不弹窗;通道级失败:App 弹窗提示"翻译异常,是否重建(在线)或重新初始化(离线)?"。单句:App 自动重试;通道级:提示用户重试
2001111SESSION_EXPIREDnetwork在线会话或 RTC/RTM token 已过期。App 停止当前会话,弹窗提示"会话已过期,请重新创建对话";不可复用旧 token。提示用户操作
2001112QUOTA_EXCEEDEDnetwork账号或应用服务配额不足。App 弹窗提示"配额不足",停止当前流程;引导用户联系客服或升级套餐。不可恢复(需联系客服)
2001113INVALID_LANGUAGE_CODEcaller传入的语言代码不被当前模式支持。App 弹窗提示"当前语言不支持,请重新选择";在线重新创建对话,离线确认对应语种模型已下载后重新初始化。提示用户操作
2001114ENGINE_INITIALIZATION_FAILEDrtcRtm引擎初始化失败;离线 creation failed、load timeout 或模型加载超时。App 弹窗提示"引擎初始化失败,是否重试?";连续失败 3 次后提示用户检查 SDK 资源和离线模型完整性。提示用户重试
2001115BUFFER_OVERFLOWaudio音频输入或输出缓冲超过处理能力。App 自动降低推流频率或重启采集;严重时弹窗提示"音频缓冲溢出,请重建通道"。App 自动重试(降低频率)
2001116THREAD_INTERRUPTEDinternal工作线程被中断。App 自动重试当前操作;若持续出现则弹窗提示"内部异常,请重新创建对话"并记录诊断日志。App 自动重试
2001117OFFLINE_MODEL_NOT_READYmodel模型缺失、校验失败、下载失败、离线鉴权未通过或账号未开通离线能力。App 引导用户下载/更新模型或重新鉴权;在模型就绪前不要直接启动离线通道。提示用户操作
2001999UNKNOWN_ERRORinternal未知错误或底层错误无法映射。App 弹窗提示"发生未知错误,是否重新创建(在线)或重新初始化(离线)?";记录诊断日志。提示用户重试
2002001NETWORK_INVALID_URLcaller网络 URL、模型下载 URL 或后台地址配置错误。App 弹窗提示"网络地址配置错误",停止当前流程,不重试。不可恢复(需修复配置)
2002002NETWORK_TRANSPORT_ERRORnetwork网络传输失败,包括 DNS、TLS、超时或模型下载失败。App 弹窗提示"网络连接失败,是否重试?";模型下载场景保留续传/重试入口。提示用户重试
2002003NETWORK_HTTP_STATUS_ERRORnetwork已被 HTTP 状态细分码取代,仅作为兼容兜底保留。按下方 HTTP 状态细分码表处理;新代码不应依赖此码。视 HTTP 状态码而定
2002004NETWORK_RESPONSE_DECODING_ERRORnetwork响应、manifest 或语言列表解析失败。App 弹窗提示"服务响应异常",记录诊断日志。不可恢复
2002005NETWORK_BUSINESS_ERRORnetwork已被后台业务码细分码取代,仅作为兼容兜底保留。按下方后台业务码细分表处理;新代码不应依赖此码。视业务码而定
2002006REQUEST_CANCELLEDnetwork用户取消、页面退出、主动停止或音色设置被取消。App 不弹错误框,仅恢复 UI 到已取消/已停止状态。无需恢复
2003002INVALID_STATEstate当前状态不允许操作;例如通道释放后继续调用。重复停止可忽略;关键路径失败时 App 弹窗提示"状态异常,请重新创建(在线)或重新初始化(离线)"。提示用户重试
2003003DEPENDENCY_UNAVAILABLErtcRtm必要依赖、离线库或模型能力不可用。App 弹窗提示"SDK 依赖异常,请检查资源完整性",停止当前流程并记录诊断。不可恢复
2003004RTC_OPERATION_FAILEDrtcRtmRTC/RTM 入会、订阅、消息收发等实时链路操作失败(通用兜底);封禁、加入失败、服务端拒绝和被踢已使用下方细分码。App 弹窗提示"实时链路异常,是否重新创建或离开?";未命中细分码时记录 actualErrorCode 排障。提示用户重试
2003005MESSAGE_DECODING_FAILEDrtcRtm在线/离线消息解析失败。App 仅记录日志,不弹窗、不关闭通道。App 自动重试(日志记录)
2003006AUDIO_CHANNEL_CREATION_FAILEDaudio音频通道创建失败。App 停止采集,弹窗提示"音频通道创建失败,是否重建(在线)或重新初始化(离线)?"。提示用户重试
2003007TRACK_EVENT_NOT_CONFIGUREDinternal埋点未配置。不影响翻译主流程,App 可忽略或记录日志。无需恢复
2003008TRACK_EVENT_INVALID_EVENT_NAMEcaller埋点事件名为空或非法。不影响翻译主流程,App 可忽略或修正埋点配置。无需恢复
2003103RTC_BANNED_BY_SERVERrtcRtm被服务端封禁(声网 connection reason 3);状态原因仍为 bannedByServer。App 弹窗提示"当前对话已被封禁,请离开"。不可恢复
2003104RTC_JOIN_FAILEDrtcRtm加入实时频道失败(声网 connection reason 4);状态原因仍为 serviceRejected。App 弹窗提示"加入频道失败,是否重试或检查网络?"。提示用户重试
2003110RTC_REJECTED_BY_SERVERrtcRtm被服务端拒绝(声网 connection reason 10);状态原因仍为 serviceRejected。App 弹窗提示"服务端拒绝连接,是否重新创建或离开?"。不可恢复
2003123RTC_USER_BANNEDrtcRtm用户被踢出频道(声网 error code 123)。App 弹窗提示"您已被移出对话,请离开"。不可恢复

HTTP 状态细分码​

HTTP 非成功状态使用 2002000 + HTTP 状态码 映射为 SDK 错误码,原始状态码保留在 actualErrorCode,actualErrorDomain 为 http。

codeconstantName说明处理契约恢复策略
2002400NETWORK_HTTP_BAD_REQUESTHTTP 400,请求参数错误。App 不重试;检查请求参数是否正确。不可恢复(需修复参数)
2002401NETWORK_HTTP_UNAUTHORIZEDHTTP 401,未授权。App 重新发起鉴权流程,获取新 token 后重试原请求。App 自动重试(重新鉴权后)
2002403NETWORK_HTTP_FORBIDDENHTTP 403,禁止访问。App 不重试;提示用户"无访问权限,请联系客服"。不可恢复(需联系客服)
2002404NETWORK_HTTP_NOT_FOUNDHTTP 404,资源不存在。App 不重试;检查请求 URL 和资源标识。不可恢复(需修复地址)
2002408NETWORK_HTTP_REQUEST_TIMEOUTHTTP 408,请求超时。App 自动重试原请求(最多 3 次),失败后提示用户"请求超时,请检查网络"。App 自动重试
2002429NETWORK_HTTP_TOO_MANY_REQUESTSHTTP 429,请求过于频繁。App 按指数退避自动重试(初始 1s,最大 30s),失败后提示"请求过于频繁,请稍后重试"。App 自动重试(退避后)
2002500NETWORK_HTTP_SERVER_ERRORHTTP 500,服务端内部错误。App 自动重试原请求(最多 3 次),失败后提示"服务异常,请稍后重试"。App 自动重试
2002502NETWORK_HTTP_BAD_GATEWAYHTTP 502,网关错误。App 自动重试原请求(最多 3 次),失败后提示"网关异常,请稍后重试"。App 自动重试
2002503NETWORK_HTTP_SERVICE_UNAVAILABLEHTTP 503,服务不可用。App 按指数退避自动重试(初始 1s,最大 30s),失败后提示"服务暂时不可用,请稍后重试"。App 自动重试(退避后)
2002504NETWORK_HTTP_GATEWAY_TIMEOUTHTTP 504,网关超时。App 自动重试原请求(最多 3 次),失败后提示"网关超时,请检查网络"。App 自动重试
2002xxxHTTP_<status>未列出的 HTTP 状态码。按状态码语义处理:4xx 不重试检查参数,5xx 自动重试;从 actualErrorCode 读取原始状态码。视 HTTP 状态码而定

后台业务码细分​

后台业务错误使用 2004000 + 后台码 映射为 SDK 错误码;未知后台码统一返回 2007999。原始后台码保留在 actualErrorCode,actualErrorDomain 为 backend。

后台码SDK 错误码constantName说明处理契约恢复策略
10012005001BIZ_TOKEN_PARAM_LOSTtoken 参数缺失。App 提示"token 参数缺失,请检查鉴权参数"。提示用户操作
1002 / 1003 / 10052001102AUTHENTICATION_FAILED授权头格式非法、token 校验失败或 token 非法。App 弹窗提示"鉴权失败,请重新鉴权"。提示用户操作
10042001111SESSION_EXPIREDtoken 已过期。App 停止当前会话,弹窗提示"会话已过期,请重新创建对话"。提示用户操作
20002006000BIZ_PARAM_ERROR参数错误。App 提示"请求参数错误,请检查配置"。提示用户操作
20012006001BIZ_PARAM_LOST参数缺失。App 提示"请求参数缺失,请检查配置"。提示用户操作
20022006002BIZ_SERVER_BUSY服务端繁忙。App 自动重试(最多 3 次);失败后提示"服务繁忙,请稍后重试"。App 自动重试
20032006003BIZ_ILLEGAL_OPERATION非法操作。App 提示"非法操作"并停止当前流程。不可恢复
20042006004BIZ_ROOM_STATUS_UNAVAILABLE房间状态不可用。App 提示"房间状态不可用,请重新创建"。提示用户重试
20062006006BIZ_USER_NOT_EXISTS用户不存在。App 提示"用户不存在,请检查账号"。提示用户操作
20072006007BIZ_ROOM_DATA_NOT_EXISTS房间数据不存在。App 提示"房间数据不存在,请重新创建"。提示用户重试
20082006008BIZ_REGION_INVALIDregion 非法。App 提示"region 非法,请检查区域配置"。提示用户操作
20112006011BIZ_NO_PERMISSION_OPERATE_ROOM无房间操作权限。App 提示"无房间操作权限"。不可恢复
20142006014BIZ_ENGINE_PARAMS_INVALID引擎参数非法。App 提示"引擎参数非法,请检查配置"。提示用户操作
20172006017BIZ_PERMISSION_DENIED权限不足。App 提示"权限不足"并停止当前流程。不可恢复
30002007000BIZ_USER_IDENTITY_INVALID用户身份非法。App 提示"用户身份非法"。不可恢复
30012007001BIZ_ROOM_NOT_EXIST房间不存在。App 提示"房间不存在,请重新创建"。提示用户重试
其它2007999BACKEND_BIZ_UNKNOWN未知后台业务码。App 提示"服务端返回未知错误",记录 actualErrorCode 排障后重试。提示用户重试

补充说明:

  • 离线翻译在底层失败时,会按阶段映射为统一错误码:tts → 2001109 / TTS_SYNTHESIS_ERROR,translation/asr → 2001110 / TRANSLATION_ERROR。底层组件码保留在 actualErrorCode 中。
  • RTC 细分码保留原有的 onStateChanged 原因:2003103 对应 bannedByServer,2003104 与 2003110 对应 serviceRejected。未列出的 RTC 错误仍使用 2003004。
凭据安全

License 签发响应可能返回 license_id 或 licenseId。SDK 仅可将脱敏后的 licenseId 用于诊断关联,不应输出原始 License、clientSecret 或设备私钥。


iOS 错误码​

TmkTranslationError 错误模型​

public enum TmkTranslationError: Error, LocalizedError {
case caller(message: String, underlying: Error? = nil)
case network(message: String, underlying: Error? = nil)
case rtcRtm(message: String, underlying: Error? = nil)
case audio(message: String, underlying: Error? = nil)
case state(message: String, underlying: Error? = nil)
case internalError(message: String, underlying: Error? = nil)
}

常用公开属性:

属性说明
codeSDK 统一错误码。
constantName错误码常量名。
message对外可读错误文案。
category错误分类(caller/network/rtcRtm/audio/state/internal)。
chineseDescription / englishDescription中英文说明。
underlyingError原始底层错误。
actualErrorCode实际底层错误码,例如离线组件或 LicenseCore 诊断码。
actualErrorMessage实际底层错误信息;上传或展示前必须脱敏。
actualErrorDomain实际底层错误域。

示例:

func onError(_ error: TmkTranslationError) {
print(error.code)
print(error.category.rawValue)
print(error.message)
let safeActualMessage = error.actualErrorMessage == nil ? "-" : "<redacted>"
print(safeActualMessage)
}

iOS 离线组件诊断码​

以下错误码为 iOS 离线组件 TmkOfflineErrorCode 的定义值。SDK 内部通过 TmkTranslationError.from(_:) 将其映射为上方通用错误码后回调 App;原始码保留在 error.actualErrorCode 中,仅用于诊断排障。

codeconstantName说明上层映射码处理契约恢复策略
2004001OFFLINE_INVALID_ARGUMENT离线组件参数无效(modelDirectory/text 等为空或非法)。2001106作为 actualErrorCode 排障;App 检查配置参数,修正后重新初始化。提示用户操作
2004002OFFLINE_CREATION_FAILED离线引擎创建失败(ASR/MT/TTS Session 初始化失败)。2001114作为 actualErrorCode 排障;App 检查模型文件完整性,重新初始化离线通道。提示用户操作
2004003OFFLINE_OPERATION_FAILED离线引擎运行时操作失败(翻译/合成等执行异常)。2001110 / 2001109作为 actualErrorCode 排障;按 stage 判断:TTS 阶段→2001109,ASR/MT 阶段→2001110。App 自动重试
2004004OFFLINE_ENGINE_RELEASED离线引擎已释放后继续调用。2003002作为 actualErrorCode 排障;忽略退出后的回调或重新创建通道。App 自动重试(日志记录)
2004005OFFLINE_LOAD_TIMEOUT离线模型加载超时。2001114作为 actualErrorCode 排障;检查模型完整性并重新加载。提示用户操作

iOS 离线 License 组件码​

离线 License 鉴权失败不会导致在线 verifyAuth(_:) 回调失败;当业务继续调用离线能力接口或创建离线通道时,对外 error.code 统一映射为 2001102 / AUTHENTICATION_FAILED。组件码写入 error.actualErrorCode,native LicenseCore 返回码写入 error.actualErrorMessage。

codeconstantNamenative 返回码说明处理契约恢复策略
2004101OFFLINE_AUTH_EMPTY_CONTENT1001License 内容为空。App 提示"离线 License 内容为空",引导用户重新联网鉴权获取 License;不要继续启动离线通道。提示用户操作
2004102OFFLINE_AUTH_DECRYPT_OR_PARSE_FAILED1002License 解密或解析失败。App 提示"离线 License 解析失败",引导用户重新联网鉴权;不要删除设备密钥,不上传原始 License。提示用户操作
2004103OFFLINE_AUTH_SIGNATURE_INVALID1003License 签名无效。App 提示"离线 License 签名无效",引导用户重新联网鉴权;若仍失败,提示检查后台签发配置。提示用户操作
2004104OFFLINE_AUTH_CLIENT_PACKAGE_OR_DEVICE_MISMATCH1004client、包名或设备绑定不匹配。App 提示"设备绑定不匹配",引导用户检查包名、账号和设备绑定后重新鉴权。提示用户操作
2004105OFFLINE_AUTH_MODEL_KEY_EMPTY1005模型密钥为空。App 提示"离线模型密钥为空",引导用户检查账号离线授权范围后重新鉴权。提示用户操作
2004106OFFLINE_AUTH_EXPIRED_OR_NOT_YET_VALID1006License 已过期或尚未生效。App 提示"离线 License 已过期或未生效",引导用户联网重新签发 License 后再使用离线能力。提示用户操作
2004107OFFLINE_AUTH_UNSUPPORTED1007License 版本或算法不支持。App 提示"离线 License 版本不支持",引导用户升级 SDK 或联系后台确认签发格式。提示用户操作
2004108OFFLINE_AUTH_UNAUTHORIZED_SCOPE_OR_MODEL1008当前 scope 或模型未授权。App 提示"离线授权范围不足",引导用户检查账号授权范围,重新鉴权或联系后台开通。提示用户操作
2004199OFFLINE_AUTH_INTERNAL_ERROR1099/unknown内部错误或未知 native 返回码。App 提示"离线鉴权内部错误",引导用户联网重试;持续失败时记录脱敏日志提交排查。提示用户重试

iOS 设备密钥错误​

iOS 独有的 Security.framework Keychain 操作错误,仅适用于 iOS 平台。

codeconstantName说明处理契约恢复策略
2001201DEVICE_KEY_READ_FAILED设备密钥读取失败,且 Security.framework 错误未能进一步分类。检查设备 Keychain 状态并重试;结合 actualErrorCode 排查。提示用户操作
2001202DEVICE_KEY_CREATION_FAILED设备密钥创建失败。检查系统 Security.framework 能力并重试;不要删除已有 License 绑定密钥。提示用户操作
2001203DEVICE_KEY_INVALID设备密钥或 Security.framework 参数无效。检查 SDK、系统版本和密钥参数;修复后重新鉴权。提示用户操作
2001204DEVICE_KEY_ACCESS_DENIED设备密钥访问被系统拒绝。检查 Keychain 访问条件、设备锁定状态和应用签名配置。提示用户操作
2001205DEVICE_KEY_UNAVAILABLE设备密钥服务或所需交互条件暂不可用。稍后重试,并检查设备是否允许 Keychain 交互。提示用户操作
2001206DEVICE_KEY_STORAGE_FAILED设备密钥所在 Keychain 存储操作失败。检查 Keychain 存储状态和系统空间,必要时提交脱敏诊断信息。提示用户操作
2001299DEVICE_KEY_OPERATION_FAILED设备密钥操作失败,无法进一步分类。保留并上报 actualErrorCode、actualErrorDomain、actualErrorMessage。提示用户操作

完整英文说明和 Apple OSStatus 对照见 Apple Security Framework Result Codes。SDK 不自动删除或重建已有设备密钥。


Android 错误码​

TmkTranslationException 异常模型​

class TmkTranslationException : Exception {
// 对外统一错误码(2001xxx/2002xxx/2003xxx,见通用错误码表)。
val errorCode: Int
// 底层原始错误码(后台业务码、HTTP 状态码或 native 返回码等);无原始码时为 null。
val actualErrorCode: Int?
// 底层原始错误信息;无原始信息时为 null。
val actualErrorMessage: String?
// 底层原始错误域,用于区分原始码来源,如 "backend"、"OfflineLicenseApplyStatus";无时为 null。
val actualErrorDomain: String?
}

错误码规则:凡来自后台或底层(native)的原始错误,errorCode 始终是通用错误码表中的统一 SDK 错误码,原始错误码与信息保留在 actualErrorCode / actualErrorMessage / actualErrorDomain 中,便于业务侧排障而不破坏统一码契约。纯 SDK 内部错误这三个字段为 null。

主要回调入口:AuthCallback.onError、CreateRoomCallback.onError、CreateChannelCallback.onError、ActionCallback.onError、TmkTranslationListener.onError、TmkTranslationChannelStateSnapshot.code。

Android 离线引擎错误码​

以下错误码由 co.timekettle.offlinesdk.ErrorCodes 定义,直接通过 listener?.onError(code, message) 透传给 App 层,不会像 iOS 那样被映射为通用码。因此 App 需针对这些码独立处理。

codeconstantName说明处理契约恢复策略
2004001ERROR_ASR_INIT_FAILEDASR Session 创建失败(模型目录为空或底层初始化异常)。App 检查 ASR 模型后引导用户下载/更新模型,重新初始化离线通道。提示用户操作
2004002ERROR_MT_INIT_FAILEDMT Session 创建失败(模型目录为空或底层初始化异常)。App 检查 MT 模型后引导用户下载/更新模型,重新初始化离线通道。提示用户操作
2004003ERROR_TTS_INIT_FAILEDTTS Session 创建失败(模型目录为空或底层初始化异常)。App 检查 TTS 模型和 tmk-tts-data 后引导用户下载/更新,重新初始化。提示用户操作
2004004ERROR_ASR_RUNTIMEASR 运行时错误(当前代码仅定义常量,尚未实际抛出)。App 记录诊断日志。若将来触发,建议 App 自动重新初始化离线通道。App 自动重试(日志记录)
2004005ERROR_MT_RUNTIMEMT 翻译运行时异常(懒切换模型目录缺失或翻译执行异常)。App 自动重新初始化离线通道,在 UI 上做 Toast 提示"翻译异常,正在恢复…";保留诊断日志。App 自动重试(自动重新初始化)
2004006ERROR_TTS_RUNTIMETTS 合成运行时异常(懒切换模型目录缺失或合成执行异常)。App 自动重新初始化离线通道,在 UI 上做 Toast 提示"语音合成异常,正在恢复…";保留诊断日志。App 自动重试(自动重新初始化)
2004007ERROR_MODEL_NOT_FOUND模型文件不存在(当前代码仅定义常量,尚未实际抛出)。App 引导用户下载或更新模型;模型就绪前不启动离线通道。提示用户操作
2004008ERROR_MODEL_DOWNLOAD_FAILED模型下载失败(当前代码仅定义常量,尚未实际抛出)。App 恢复下载按钮,提示用户点击重试或续传。提示用户重试

Android 离线 License 鉴权状态枚举​

离线 License 鉴权失败时,Android 统一回调对外错误码 2001102 / AUTHENTICATION_FAILED(TmkTranslationException.errorCode),底层 native LicenseCore 返回码保留在异常字段中:actualErrorCode = native 返回码(1001–1099),actualErrorMessage = OfflineLicenseApplyStatus.diagnosticSummary,actualErrorDomain = "OfflineLicenseApplyStatus",仅用于排障。

OfflineLicenseApplyStatusactualErrorCode触发场景
EMPTY_CONTENT1001License 内容为空。
DECRYPT_OR_PARSE_FAILED1002License 解密或解析失败。
SIGNATURE_INVALID1003License 签名无效。
CLIENT_PACKAGE_OR_DEVICE_MISMATCH1004client、包名或设备绑定不匹配。
MODEL_KEY_EMPTY1005模型密钥为空。
EXPIRED_OR_NOT_YET_VALID1006License 已过期或尚未生效。
UNSUPPORTED1007License 版本或算法不支持。
UNAUTHORIZED_SCOPE_OR_MODEL1008当前 scope 或模型未授权。
INTERNAL_ERROR1098离线 License 鉴权内部错误。
UNKNOWN1099未知 native 返回码。

补充说明:

  • 后台业务/RTC 命令失败时,errorCode 为通用错误码;后台原始码保留在 actualErrorCode、actualErrorDomain="backend"。
  • 离线通道底层 ASR/MT/TTS 组件码可能被 SDK 映射为 2001109、2001110、2001114 或 2001117 后回调业务侧;组件码用于定位具体离线阶段。
  • 诊断日志可以记录 OfflineLicenseApplyStatus 诊断枚举和 native LicenseCore 返回码,但不能上传原始 License、clientSecret 或设备私钥。