网络及其他
- Android
更新时间不可用
complain
允许你在通话结束后投诉通话质量。
public abstract int complain(String callId, String description);请在用户离开频道后调用该方法。
参数
| 参数名 | 描述 |
|---|---|
callId | 当前通话的 Call ID。你可以通过调用 getCallId 获取。 |
description |
返回值
所属接口类
enableEncryption
启用或关闭内置加密功能。
public abstract int enableEncryption(boolean enabled, EncryptionConfig config);用户离开频道后,SDK 会自动关闭内置加密功能。请在用户重新加入频道前调用该方法。
注:
- 同一频道内的所有用户在调用该方法时必须设置相同的加密配置。
- 启用内置加密功能后,无法使用旁路推流功能。
适用场景
适用于安全性要求较高的场景。
调用时机
请在加入频道前调用该方法。
参数
| 参数名 | 描述 |
|---|---|
enabled | |
config | 内置加密配置。详见 EncryptionConfig。 |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -2:参数无效。请传入有效参数。
- -4:内置加密模式错误或 SDK 加载外部加密库失败。请检查枚举值或重新加载外部加密库。
- -7:SDK 未初始化。请先初始化 RtcEngine 实例后再调用该方法。
所属接口类
enableEncryptionEx
启用或关闭内置加密功能。
public abstract int enableEncryptionEx(boolean enabled, EncryptionConfig config, RtcConnection connection);用户离开频道后,SDK 会自动关闭内置加密。你需要在用户重新加入频道前调用该方法。
注:
- 同一频道内的所有用户在调用该方法时必须设置相同的加密配置。
- 启用内置加密后,无法使用旁路推流功能。
适用场景
适用于多频道场景,或对安全性要求较高的场景。
调用时机
请在加入频道前调用该方法。
参数
| 参数名 | 描述 |
|---|---|
enabled | |
config | 内置加密配置。详见 EncryptionConfig。 |
connection | 连接信息。详见 RtcConnection。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
enableWebSdkInteroperability
启用或关闭与声网 Web SDK 的互通功能,仅适用于直播场景。
public abstract int enableWebSdkInteroperability(boolean enabled);废弃
该方法已废弃。SDK 自动开启与 Web SDK 的互通,无需调用该方法开启。
如果频道中存在 Web SDK 用户,必须调用该方法,否则 Native 用户的视频画面在 Web 端将显示为黑屏。该方法仅适用于直播场景,在语音通话场景中默认启用互通功能。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
getCallId
获取当前通话 ID。
public abstract String getCallId();客户端在用户加入频道后会生成一个用于标识当前通话的 callId。你可以调用 getCallId 获取 callId,并在调用 rate、complain 等方法时传入该值。
调用时机
该方法需要在加入频道后调用。
返回值
- 方法调用成功时,返回当前通话的
callId。 - 方法调用失败,返回空字符串。
所属接口类
getCallIdEx
获取与连接 ID 对应的通话 ID。
public abstract String getCallIdEx(RtcConnection connection);你可以调用该方法获取 callId,并在调用 rate 和 complain 等方法时传入该 ID。
适用场景
该方法适用于多频道场景。
调用时机
请在加入频道后调用此方法。
参数
| 参数名 | 描述 |
|---|---|
connection | 连接信息。详见 RtcConnection。 |
返回值
方法调用成功时,返回通话 ID。 方法调用失败,返回空字符串。
所属接口类
getConnectionState
获取 SDK 当前的连接状态。
public abstract int getConnectionState();调用时机
该方法可以在加入频道前或加入频道后调用。
返回值
- 方法调用成功,返回当前的连接状态。
所属接口类
getConnectionStateEx
获取 SDK 当前的连接状态。
public abstract int getConnectionStateEx(RtcConnection connection);适用场景
该方法适用于多频道场景。
调用时机
该方法可以在加入频道前或后调用。
参数
| 参数名 | 描述 |
|---|---|
connection | 连接信息。详见 RtcConnection。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
getCurrentMonotonicTimeInMs
获取 SDK 当前的单调时间。
public abstract long getCurrentMonotonicTimeInMs();在自定义视频采集和自定义音频采集场景中,为确保音视频同步,声网建议调用该方法获取 SDK 当前的单调时间,并将该值传入采集的视频帧 (VideoFrame) 和音频帧 (AudioFrame) 的时间戳参数中。单调时间是指一个随时间单调递增的时间序列,单位为毫秒。
调用时机
该方法可在加入频道前或加入频道后调用。
返回值
- 方法调用成功,返回 SDK 当前的单调时间(单位为毫秒)。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
getErrorDescription
获取警告或错误码对应的描述信息。
public static String getErrorDescription(int error)参数
返回值
方法调用成功时,返回错误码对应的描述信息。 方法调用失败,返回空字符串。
所属接口类
getNativeHandle
获取原生 SDK 的 C++ 句柄。
public abstract long getNativeHandle();该方法可用于注册音频和视频帧观察器。
返回值
方法调用成功,返回 SDK 的原生句柄。
所属接口类
getNetworkType
获取本地网络连接类型。
public abstract int getNetworkType();你可以在任意阶段调用此方法获取当前使用的网络类型。
注: 你可以在加入频道前或后调用此方法。
返回值
-
方法调用成功,返回本地网络连接类型:
- 0:SDK 与网络断开连接。
- 1:网络类型为 LAN。
- 2:网络类型为 Wi-Fi(包括热点)。
- 3:网络类型为移动 2G。
- 4:网络类型为移动 3G。
- 5:网络类型为移动 4G。
- 6:网络类型为移动 5G。
-
方法调用失败,返回错误码:
- -1:网络类型未知。
所属接口类
getNtpWallTimeInMs
获取当前 NTP(网络时间协议)时间。
public abstract long getNtpWallTimeInMs();在实时合唱场景中,尤其是当多个接收端因网络问题导致下行链路连接不一致时,可以调用该方法获取当前 NTP 时间作为参考时间,以对齐多个接收端的歌词和音乐,实现合唱同步。
返回值
方法调用成功,返回当前 NTP 时间的 Unix 时间戳(毫秒)。
所属接口类
getSdkVersion
获取 SDK 的版本号。
public static String getSdkVersion()返回值
方法调用成功时,返回 SDK 的版本号字符串。 方法调用失败,返回空字符串。
所属接口类
isFeatureAvailableOnDevice
检查当前设备是否支持指定的高级功能。
public abstract boolean isFeatureAvailableOnDevice(int type);自从
自 v4.3.0 版本新增。
在使用高级功能前,建议调用该方法判断当前设备的能力是否满足要求,以避免在低端设备上启用高级功能时出现性能下降或功能不可用的情况。你可以根据该方法的返回值决定是否显示或启用相应的功能按钮,或在设备能力不足时提示用户。
参数
返回值
- true:当前设备支持指定的功能。
- false:当前设备不支持指定的功能。
所属接口类
queryDeviceScore
查询设备评分。
public abstract int queryDeviceScore();你可以调用该方法查询设备评分。如果返回的评分较低(例如低于 60),你需要降低视频分辨率,以避免影响视频体验。不同业务场景对设备评分的最低要求不同,具体评分建议请联系技术支持。
返回值
- > 0:方法调用成功,返回当前设备评分,范围为 [0, 100],数值越大表示设备性能越强。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
rate
允许用户在通话结束后对通话进行评分。
public abstract int rate(String callId, int rating, String description);注: 请确保在离开频道后调用此方法。
参数
| 参数名 | 描述 |
|---|---|
callId | 当前通话的 ID。你可以通过调用 getCallId 获取该 ID。 |
rating | |
description |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -1:发生通用错误。
- -2:参数无效。
所属接口类
sendCustomReportMessage
上报自定义消息。
public abstract int sendCustomReportMessage(String id, String category, String event, String label, int value);该功能目前处于测试阶段,提供免费试用。在测试版本中,最多支持在 6 秒内上报 10 条消息,每条消息不超过 256 字节,每个字符串不超过 100 字节。如需试用该功能,请联系技术支持,并与我们讨论自定义消息的格式。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
sendCustomReportMessageEx
支持上报和分析自定义消息。
public abstract int sendCustomReportMessageEx(String id, String category, String event, String label, int value, RtcConnection connection);该功能目前处于测试阶段,提供免费试用。在测试版本中,最多支持在 6 秒内上报 10 条消息,每条消息不超过 256 字节,每个字符串不超过 100 字节。如需试用该功能,请联系技术支持并与我们讨论自定义消息的格式。
适用场景
该方法适用于多频道场景。
参数
| 参数名 | 描述 |
|---|---|
id | |
category | |
event | |
label | |
value | |
connection | 连接信息,适用于多频道场景。详见 RtcConnection。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setAVSyncSource
设置发布端的音视频同步源。
public abstract int setAVSyncSource(String channelId, int uid);你可以在视频发布设备上调用该方法,并传入音频发布设备所在频道的频道名和用户 ID。SDK 会以发送的音频流的时间戳为参考,自动调整视频流,从而确保即使两个发布设备的上行网络条件不同(例如一个使用 Wi-Fi,另一个使用 4G),接收端的音视频也能实现时间同步。
注: 建议在加入频道前调用此方法。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setCloudProxy
设置云代理服务。
public abstract int setCloudProxy(int proxyType);当用户的网络访问受防火墙限制时,需要先配置防火墙,允许访问声网提供的特定 IP 地址和端口,然后调用该方法启用云代理,并通过 proxyType 参数设置云代理类型。成功连接云代理后,SDK 会触发 onConnectionStateChanged 回调,状态为 CONNECTION_STATE_CONNECTING,原因为 CONNECTION_CHANGED_SETTING_PROXY_SERVER。
如需关闭已设置的云代理,请调用 setCloudProxy,并将 proxyType 设置为 TRANSPORT_TYPE_NONE_PROXY。
如需切换云代理类型,请先调用 setCloudProxy 关闭当前代理(proxyType 设置为 TRANSPORT_TYPE_NONE_PROXY),再调用 setCloudProxy 设置新的 proxyType。
注:
- 建议在加入频道前调用该方法。
- 当用户处于防火墙之后并使用强制 UDP 云代理时,媒体推流和跨频道联播服务不可用。
- 使用强制 TCP 云代理时,调用
startAudioMixing播放 HTTP 协议的在线音乐文件会报错。媒体推流和跨频道联播服务使用 TCP 协议的云代理。
参数
| 参数名 | 描述 |
|---|---|
proxyType |
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -2:参数无效。
- -7:SDK 未初始化。
所属接口类
setLocalAccessPoint
配置连接到声网私有媒体服务器接入模块。
public abstract int setLocalAccessPoint(LocalAccessPointConfiguration config);成功部署声网混合云解决方案并将 4.x RTC SDK 集成到内网客户端后,可以调用该方法指定本地接入点,并将接入模块分配给 SDK。
注: 该方法仅在部署声网混合云解决方案后生效。你可以联系销售了解并部署声网混合云。
调用时机
必须在加入频道前调用该方法。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLogFile
设置 SDK 输出日志文件。
public abstract int setLogFile(String filePath);废弃
该方法已废弃,请在调用 create [2/2] 时通过 config 参数设置日志文件路径。
该方法需在调用 create [2/2] 后立即调用,否则输出日志可能不完整。
注: 确保日志文件所在目录存在且可写。
调用时机
该方法需在调用 create 后立即调用,否则输出日志可能不完整。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLogFileSize
设置 SDK 日志文件的大小。
public abstract int setLogFileSize(long fileSizeInKBytes);废弃
该方法已废弃,请改用 create [2/2] 中的 logConfig 参数设置日志文件大小。
默认情况下,SDK 会生成五个 SDK 日志文件和五个 API 调用日志文件,规则如下:
-
SDK 日志文件包括:
agorasdk.log、agorasdk.1.log、agorasdk.2.log、agorasdk.3.log和agorasdk.4.log。 -
API 调用日志文件包括:
agoraapi.log、agoraapi.1.log、agoraapi.2.log、agoraapi.3.log和agoraapi.4.log。 -
每个日志文件的默认大小为 2,048 KB,采用 UTF-8 编码。
-
SDK 会将最新日志写入
agorasdk.log或agoraapi.log文件。 -
当
agorasdk.log写满时,SDK 会按以下顺序处理日志文件:- 删除
agorasdk.4.log(如果存在)。 - 将
agorasdk.3.log重命名为agorasdk.4.log。 - 将
agorasdk.2.log重命名为agorasdk.3.log。 - 将
agorasdk.1.log重命名为agorasdk.2.log。 - 创建新的
agorasdk.log文件。
- 删除
-
agoraapi.log的覆盖规则与agorasdk.log相同。
注: setLogFileSize 仅用于设置 agorasdk.log 文件的大小,不影响 agoraapi.log 文件。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLogFilter
设置 SDK 的日志输出等级。
public abstract int setLogFilter(int filter);废弃
该方法已废弃,请改用 create [2/2] 中的 logConfig。
你可以使用一个或多个日志过滤等级的组合。日志等级的顺序为 LOG_FILTER_OFF、LOG_FILTER_CRITICAL、LOG_FILTER_ERROR、LOG_FILTER_WARN、LOG_FILTER_INFO 和 LOG_FILTER_DEBUG。选择一个等级可以查看该等级及其之前的日志信息。例如,如果将日志等级设置为 LOG_FILTER_WARN,你将看到 LOG_FILTER_CRITICAL、LOG_FILTER_ERROR 和 LOG_FILTER_WARN 等级的日志信息。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLogLevel
设置 SDK 的输出日志等级。
public abstract int setLogLevel(int level);废弃
该方法已废弃,请在调用 create [2/2] 时通过 config 参数设置日志输出级别。
选择一个日志等级,以查看该等级及更高级别的日志信息。
参数
| 参数名 | 描述 |
|---|---|
level | 日志等级。详见 LogLevel。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setParameters
通过配置 JSON 选项,为 SDK 提供技术预览功能或特殊定制。
public abstract int setParameters(String parameters);参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRemoteSubscribeFallbackOption [1/2]
根据网络状况设置订阅端的视频流回退选项。
public abstract int setRemoteSubscribeFallbackOption(Constants.StreamFallbackOptions option);如果将 option 设置为 STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW 或 STREAM_FALLBACK_OPTION_AUDIO_ONLY,当下行网络无法同时支持音视频时,SDK 会自动将视频从高质量流切换为低质量流,或关闭视频以保障音频质量。SDK 会持续监测网络质量,在网络改善时恢复音视频流的订阅。
注: 当订阅的视频流回退为纯音频流,或从纯音频流恢复为音视频流时,SDK 会触发 onRemoteSubscribeFallbackToAudioOnly 回调。
参数
| 参数名 | 描述 |
|---|---|
option | 订阅流的回退选项。详见 StreamFallbackOptions。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRemoteSubscribeFallbackOption [2/2]
根据网络状况设置已订阅视频流的回退选项。
public abstract int setRemoteSubscribeFallbackOption(int option)废弃
该方法已废弃。
不稳定的网络会影响视频通话或互动直播中的音视频质量。当下行网络无法同时支持音视频时,若将 option 设置为 STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW 或 STREAM_FALLBACK_OPTION_AUDIO_ONLY,SDK 会自动将视频从高质量流切换为低质量流,或关闭视频以保障音频质量。SDK 会持续监测网络质量,在网络改善后恢复订阅音视频流。
注: 当已订阅的视频流回退为纯音频流,或从纯音频流恢复为音视频流时,SDK 会触发 onRemoteSubscribeFallbackToAudioOnly 回调。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
startEchoTest
开始音视频设备回路测试。
public abstract int startEchoTest(EchoTestConfiguration config);你可以调用该方法执行一次音视频通话回路测试,用于检测音视频设备以及用户上下行网络是否正常工作。开始测试后,用户需要发出声音或面对摄像头,音频或视频将在约两秒后输出。
注:
- 在频道中调用该方法时,请确保未发布任何音视频流。
- 调用该方法后需调用 stopEchoTest 结束测试,否则用户无法进行下一次音视频通话回路测试,也无法加入频道。
- 在直播场景中,该方法仅适用于主播。
调用时机
你可以在加入频道前或加入频道后调用此方法。
参数
| 参数名 | 描述 |
|---|---|
config | 音视频通话回路测试的配置。详见 EchoTestConfiguration。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
startLastmileProbeTest
开始 Last-mile 网络探测测试。
public abstract int startLastmileProbeTest(LastmileProbeConfig config);该方法在加入频道前启动 Last-mile 网络探测测试,用于获取上行和下行的网络统计信息,包括带宽、丢包率、抖动和往返时延(RTT)。
注: 调用时序:在收到 onLastmileQuality 和 onLastmileProbeResult 回调前,请勿调用其他方法,否则可能会中断这些回调。 相关回调:成功调用该方法后,SDK 会依次触发以下两个回调:
- onLastmileQuality:SDK 会在约两秒内根据网络状况触发该回调。该回调用于评估网络质量,与用户体验更相关。
- onLastmileProbeResult:SDK 会在约 30 秒内根据网络状况触发该回调。该回调返回网络状况的实时统计数据,更加客观。
参数
| 参数名 | 描述 |
|---|---|
config | Last-mile 网络探测测试的配置。详见 LastmileProbeConfig。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
stopEchoTest
停止音频通话测试。
public abstract int stopEchoTest();调用 startEchoTest 后,必须调用该方法结束测试,否则你无法进行下一次音视频通话回路测试,也无法加入频道。
返回值
-
0:方法调用成功。
-
< 0:方法调用失败。详见错误码了解详情和解决建议。
- -5:停止回声测试失败,可能未在运行回声测试。
所属接口类
stopLastmileProbeTest
停止 Last-mile 网络探测测试。
public abstract int stopLastmileProbeTest();返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
onConnectionBanned
连接被声网服务器封禁时触发的回调。
public void onConnectionBanned() {}废弃
该方法已废弃,请改用 onConnectionStateChanged。
触发时机
该回调在连接被声网服务器封禁时被触发。
所属接口类
onConnectionInterrupted
public void onConnectionInterrupted() {}废弃
该方法已废弃,请改用 onConnectionStateChanged。
该回调在 SDK 建立连接后与服务器断开连接超过四秒时被触发。触发该回调后,SDK 会尝试重新连接服务器。你可以通过该回调实现弹窗提醒功能。 该回调与 onConnectionLost 的区别如下:
- 当 SDK 成功加入频道后,与服务器断开连接超过四秒时,会触发 onConnectionInterrupted 回调。
- 无论是否加入频道,当 SDK 与服务器断开连接超过 10 秒时,会触发 onConnectionLost 回调。
如果 SDK 在与声网边缘服务器断开连接后 20 分钟内仍未重新加入频道,则停止重连。
触发时机
该回调在 SDK 与服务器断开连接超过四秒时被触发。
所属接口类
onConnectionLost
onConnectionLost 回调:当 SDK 在连接中断后 10 秒内无法重新连接到声网边缘服务器时触发。
public void onConnectionLost() {}无论是否在频道中,当调用 joinChannel 方法后,SDK 在连接中断后 10 秒内无法连接到服务器时会触发该回调。如果 SDK 在与声网边缘服务器断开连接后 20 分钟内仍无法重新加入频道,则停止重连。
触发时机
该回调在调用 joinChannel 后,SDK 与服务器连接中断并在 10 秒内无法重新连接时被触发。
所属接口类
onConnectionStateChanged
网络连接状态发生变化回调。
public void onConnectionStateChanged(int state, int reason)自从
自 v2.3.2 版本新增。
SDK 会在网络连接状态发生变化时触发该回调,并报告当前的连接状态及其变化原因。
触发时机
该回调在网络连接状态发生变化时被触发。
参数
所属接口类
onEncryptionError
内置加密错误回调。
public void onEncryptionError(int errorType)如果在调用 enableEncryption 启用加密功能后,发送端或接收端在加密或解密过程中发生错误,SDK 会触发该回调。
触发时机
该回调在加密或解密过程中发生错误时被触发。
参数
所属接口类
onLastmileProbeResult
上行和下行 Last-mile 网络探测测试结果的回调。
public void onLastmileProbeResult(LastmileProbeResult result) {}该回调在调用 startLastmileProbeTest 后触发。
触发时机
该回调在调用 startLastmileProbeTest 后 30 秒内被触发。
参数
| 参数名 | 描述 |
|---|---|
result | 上行和下行 Last-mile 网络探测测试结果。详见 LastmileProbeResult。 |
所属接口类
onLastmileQuality
本地用户的 Last-mile 网络质量回调。
public void onLastmileQuality(int quality)该回调在用户加入频道前触发,用于上报本地用户与声网边缘服务器之间连接的 Last-mile 网络质量。在调用 startLastmileProbeTest 后,SDK 会触发该回调。
触发时机
该回调在调用 startLastmileProbeTest 方法后被触发。
参数
所属接口类
onMultipathStats
多路径传输统计信息回调。
public void onMultipathStats(MultipathStats stats) {}自从
自 v4.6.0 版本新增。
触发时机
该回调在你将 enableMultipath 设置为 true 以启用多路径传输后被触发。
参数
| 参数名 | 描述 |
|---|---|
stats | 多路径传输统计信息。详见 MultipathStats。 |
所属接口类
onNetworkQuality
onNetworkQuality 回调。报告频道中每个用户的 Last-mile 网络质量。
public void onNetworkQuality(int uid, int txQuality, int rxQuality)该回调通过在频道内发送和接收广播数据包来反馈网络质量。过多的广播数据包可能导致广播风暴。为防止广播风暴造成频道内大量数据传输,该回调默认最多同时反馈 4 个远端用户的网络质量。
注: txQuality 在用户未发送流时为 UNKNOWN;rxQuality 在用户未接收流时为 UNKNOWN。
触发时机
该回调每两秒触发一次。
参数
| 参数名 | 描述 |
|---|---|
uid | |
txQuality | |
rxQuality |
所属接口类
onNetworkTypeChanged
本地网络类型发生变化时的回调。
public void onNetworkTypeChanged(int type)你可以通过该回调获取连接状态及其变化原因。当网络连接中断时,该回调会指示中断是由于网络类型变化还是由于网络状况不佳导致的。
触发时机
该回调在本地网络类型发生变化时被触发。
参数
所属接口类
onPermissionError
设备权限获取失败时触发的回调。
public void onPermissionError(int permission)该回调在 SDK 无法获取设备权限时被触发,用于报告无法获取的权限类型。
触发时机
该回调在 SDK 无法获取设备权限时被触发。
参数
所属接口类
onPermissionGranted
onPermissionGranted 回调。用于上报已授予的权限。
public void onPermissionGranted(int permission)参数
所属接口类
onProxyConnected
代理连接状态回调。
public void onProxyConnected(String channel, int uid, int proxyType, String localProxyIp, int elapsed)当用户调用 setCloudProxy 并成功加入频道后,SDK 会触发该回调,报告用户 ID、连接的代理类型,以及从调用 joinChannel 到触发该回调所经历的时间(毫秒)。
触发时机
该回调在用户调用 setCloudProxy 并成功加入频道后被触发。
参数
所属接口类
onRemoteSubscribeFallbackToAudioOnly
onRemoteSubscribeFallbackToAudioOnly 回调。当远端媒体流因网络变化在音频流与视频流之间切换时触发。
public void onRemoteSubscribeFallbackToAudioOnly(int uid, boolean isFallbackOrRecover)如果你调用了 setRemoteSubscribeFallbackOption 并将 option 设置为 STREAM_FALLBACK_OPTION_AUDIO_ONLY,SDK 会在以下情况下触发该回调:
- 下行网络条件较差,已订阅的视频流降级为纯音频流。
- 下行网络条件改善,已订阅的流恢复为视频流。
注: 你可以在 onRemoteVideoStats 回调中监控高质量与视频小流之间的切换。
触发时机
该回调在远端媒体流因网络变化在音频流与视频流之间切换时被触发。
参数
所属接口类
onUplinkNetworkInfoUpdated
上行网络信息发生变化回调。
public void onUplinkNetworkInfoUpdated(UplinkNetworkInfo info) {}注: 该回调仅适用于将外部编码的 H.264 格式视频数据推送到 SDK 的场景。
触发时机
该回调在上行网络信息发生变化时被触发。
参数
| 参数名 | 描述 |
|---|---|
info | 上行网络信息,详见 UplinkNetworkInfo。 |