Agora SDK 在调用 API 或运行时,可能会返回错误或警告码:

  • 错误码 意味着 SDK 遭遇不可恢复的错误,需要应用程序干预,例如打开摄像头失败会返回错误,应用程序需要提示用户不能使用摄像头。

  • 警告码 意味着 SDK 遇到问题,但有可能恢复,警告码仅起告知作用,一般情况下应用程序可以忽略警告码。

错误码

错误码 描述
ERR_OK 0 没有错误。
ERR_FAILED 1 一般性的错误(没有明确归类的错误原因)。
ERR_INVALID_ARGUMENT 2 API 调用了无效的参数。例如指定的频道名含有非法字符。
ERR_NOT_READY 3 SDK 的模块没有准备好,例如某个 API 调用依赖于某个模块,但该模块尚未准备提供服务。
ERR_NOT_SUPPORTED 4 SDK 不支持该功能。
ERR_REFUSED 5 调用被拒绝。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_BUFFER_TOO_SMALL 6 传入的缓冲区大小不足以存放返回的数据。
ERR_NOT_INITIALIZED 7 SDK 尚未初始化,就调用其 API。
ERR_NO_PERMISSION 9 没有操作权限。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_TIMEDOUT 10 API 调用超时。有些 API 调用需要 SDK 返回结果,如果 SDK 处理时间过长,会出现此错误。
ERR_CANCELED 11 请求被取消。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_TOO_OFTEN 12 调用频率太高。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_BIND_SOCKET 13 SDK 内部绑定到网络 socket 失败。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_NET_DOWN 14 网络不可用。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_NET_NOBUFS 15 没有网络缓冲区可用。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_JOIN_CHANNEL_REJECTED 17 加入频道被拒绝。一般是因为用户已进入频道,再次调用加入频道的 API,例如 joinChannel,会返回此错误。
ERR_LEAVE_CHANNEL_REJECTED 18 离开频道失败。一般是因为用户已离开某频道,再次调用退出频道的API,例如 leaveChannel,会返回此错误。
ERR_ALREADY_IN_USE 19 资源已被占用,不能重复使用。
ERR_ABORTED 20 SDK 放弃请求,可能由于请求次数太多。仅供 SDK 内部使用,不通过 API 或者回调事件返回给应用程序。
ERR_INIT_NET_ENGINE 21 Windows 下特定的防火墙设置导致 SDK 初始化失败然后崩溃。
ERR_INVALID_VENDOR_KEY 101 指定的 App ID 无效。
ERR_INVALID_CHANNEL_NAME 102 指定的频道名无效。
ERR_NOT_IN_CHANNEL 113 用户不在频道内。
ERR_SIZE_TOO_LARGE 114 数据太大
ERR_BITRATE_LIMIT 115 码率受限
ERR_LOAD_MEDIA_ENGINE 1001 加载媒体引擎失败。
ERR_START_CALL 1002 启动媒体引擎开始通话失败。
ERR_ADM_GENERAL_ERROR 1005 音频设备模块出现一般性错误(没有明显归类的错误)。
ERR_ADM_JAVA_RESOURCE 1006 语音模块: 使用 java 资源出现错误。
ERR_ADM_SAMPLE_RATE 1007 语音模块: 设置的采样频率出现错误。
ERR_ADM_INIT_PLAYOUT 1008 语音模块: 初始化播放设备出现错误。
ERR_ADM_START_PLAYOUT 1009 语音模块: 启动播放设备出现错误。
ERR_ADM_STOP_PLAYOUT 1010 语音模块: 停止播放设备出现错误。
ERR_ADM_INIT_RECORDING 1011 语音模块: 初始化录音设备时出现错误。
ERR_ADM_START_RECORDING 1012 语音模块: 启动录音设备出现错误。
ERR_ADM_STOP_RECORDING 1013 语音模块: 停止录音设备出现错误。
ERR_ADM_RUNTIME_PLAYOUT_ERROR 1015 语音模块: 运行时播放出现错误。
ERR_ADM_RUNTIME_RECORDING_ERROR 1017 语音模块: 运行时录音错误。
ERR_ADM_RECORD_AUDIO_FAILED 1018 语音模块: 录制失败
ERR_ADM_INIT_LOOPBACK 1022 语音模块: 初始化 loopback 设备错误。
ERR_ADM_START_LOOPBACK 1023 语音模块: 启动 loopback 设备错误。
ERR_ADM_NO_PERMISSION 1027 语音模块: 没有使用 ADM 的权限
ERR_ADM_RUNTIME_PLAYOUT_ERROR 1015 语音模块: 运行时播放出现错误。
ERR_ADM_RUNTIME_RECORDING_ERROR 1017 语音模块: 运行时录音错误。
ERR_ADM_RECORD_AUDIO_FAILED 1018 语音模块: 录制失败
ERR_ADM_INIT_LOOPBACK 1022 语音模块: 初始化 loopback 设备错误。
ERR_ADM_START_LOOPBACK 1023 语音模块: 启动 loopback 设备错误。
ERR_ADM_NO_PERMISSION 1027 语音模块: 没有使用 ADM 的权限

警告码

警告码 描述
WARN_PENDING 20 请求处于待定状态。一般是由于某个模块还没准备好,请求被延迟处理。
WARN_NO_AVAILABLE_CHANNEL 103 没有可用的频道资源。可能是因为服务端没法分配频道资源。
WARN_LOOKUP_CHANNEL_TIMEOUT 104 查找频道超时。在加入频道时SDK先要查找指定的频道,出现该警告一般是因为网络太差,连接不到服务器。
WARN_LOOKUP_CHANNEL_REJECTED 105 查找频道请求被服务器拒绝。服务器可能没有办法处理这个请求或请求是非法的。
WARN_OPEN_CHANNEL_TIMEOUT 106 打开频道超时。查找到指定频道后,SDK 接着打开该频道,超时一般是因为网络太差,连接不到服务器。
WARN_OPEN_CHANNEL_REJECTED 107 打开频道请求被服务器拒绝。服务器可能没有办法处理该请求或该请求是非法的。
WARN_SET_CLIENT_ROLE_TIMEOUT 118 设置用户角色超时。服务器可能没有办法处理该请求或该请求是非法的。
WARN_SET_CLIENT_ROLE_NOT_AUTHORIZED 119 用户没有权限进行该操作
WARN_AUDIO_MIXING_OPEN_ERROR 701 调用 startAudioMixing() 时传入了不正确或不完整的文件
WARN_ADM_RUNTIME_PLAYOUT_WARNING 1014 音频设备模块: 运行时播放设备出现警告。
WARN_ADM_RUNTIME_RECORDING_WARNING 1016 音频设备模块: 运行时录音设备出现警告。
WARN_ADM_RECORD_AUDIO_SILENCE 1019 音频设备模块: 没有采集到有效的声音数据。
WARN_ADM_PLAYOUT_MALFUNCTION 1020 音频设备模块: 播放设备出现故障。
WARN_ADM_RECORD_MALFUNCTION 1021 音频设备模块: 录制设备出现故障。
WARN_ADM_RECORD_MALFUNCTION 1031 音频设备模块: 录制声音过小
WARN_ADM_HOWLING 1051 音频设备模块: 检测到啸叫。