public interface com.ss.video.rtc.engine.loader.RtcNativeLibraryLoader
用户自定义动态库加载器实现
| 返回 | 名称 |
|---|---|
| boolean | load |
boolean com.ss.video.rtc.engine.loader.RtcNativeLibraryLoader.load(
String libraryName)
SDK 在需要加载动态库时通过该方法回调
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| libraryName | String | 要加载的动态库名称 |
public interface com.ss.video.rtc.engine.handler.IGameRTCEventHandler
GameRTCEngine 回调类
| 返回 | 名称 |
|---|---|
| void | onJoinRoomSuccess |
| void | onLeaveRoom |
| void | onUserJoined |
| void | onUserLeave |
| void | onMicrophoneEnabled |
| void | onAudioSendEnabled |
| void | onSpeakerphoneEnabled |
| void | onAudioVolumeIndication |
| void | onConnectionStateChanged |
| void | onNetworkQuality |
| void | onLogReport |
| void | onEngineWarning |
| void | onRoomWarning |
| void | onRoomError |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onJoinRoomSuccess(
String roomId,
String userId,
boolean isRejoined,
int elapsed)
用户成功加入房间/重连进房后,收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 用户 ID |
| isRejoined | boolean | 是否为重连进房: • true: 是重连进房 • false:是初次进房 |
| elapsed | int | 加入房间耗时。用户从调用 joinRoom 方法到加入房间成功所经历的时间间隔,单位为 ms。 |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onLeaveRoom(
String roomId)
离开房间成功回调
用户调用 leaveRoom 方法后,SDK 会停止所有的发布订阅流,并释放所有通话相关的音视频资源。SDK 完成所有的资源释放后,用户收到此回调。
离开房间结束通话后,如果 App 需要使用系统音视频设备,建议在收到此回调后再初始化音视频设备.否则可能由于 SDK 占用了导致 App 初始化音视频设备失败。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
注意 用户调用 leaveRoom 方法离开房间后,如果立即调用 destroy 方法销毁 GameRTC 引擎,则将无法收到此回调事件。
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onUserJoined(
String roomId,
String userId)
远端用户加入房间回调。
以下情形下,本地用户会收到此回调:
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 用户 ID |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onUserLeave(
String roomId,
String userId,
IGameRTCEventHandler.UserLeaveReasonType reason)
远端用户离开房间回调。
房间中有用户主动调用 leaveRoom 方法离开房间或断线超时离开房间时,房间中其他用户都会收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 离开房间的用户的用户 ID |
| reason | IGameRTCEventHandler.UserLeaveReasonType | 用户离开的原因。参看 UserLeaveReasonType |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onMicrophoneEnabled(
String roomId,
String userId,
boolean enable)
远端用户开关麦克风回调
当用户调用 enableMicrophone 更改本地音频采集和发布状态时,房间内其他用户会收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 更改本地音频采集和发布状态的用户的 ID |
| enable | boolean | • true: 打开麦克风 • false: 关闭麦克风 |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onAudioSendEnabled(
String roomId,
String userId,
boolean enable)
远端用户启停音频数据发送的回调
当用户调用 enableAudioSend 更改本地音频发送状态时,房间内其他用户会收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 更改本地音频发送状态的用户的 ID |
| enable | boolean | • true: 开启音频发送 • false: 停止音频发送 |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onSpeakerphoneEnabled(
String roomId,
String userId,
boolean enable)
远端用户启停音频数据接收的回调
当用户调用 enableSpeakerphone 更改远端音频接收状态时,房间内其他用户会收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 更改远端音频接收状态的用户的 ID |
| enable | boolean | • true: 开启接收远端音频 • false: 停止接收远端音频 |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onAudioVolumeIndication(
String roomId,
IGameRTCEventHandler.AudioVolumeInfoArray speakers,
int totalVolume)
提示本地采集的音量信息和在房间内订阅的远端用户的音量信息。
本回调默认不开启。你可以通过 GameRTCRoomConfig 中的 audioVolumeIndicationInterval 参数开启。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| speakers | IGameRTCEventHandler.AudioVolumeInfoArray | 本地用户和订阅的远端用户的 ID 和音量。 参见:AudioVolumeInfo。 |
| totalVolume | int | speakers 中包含的所有音频音量之和,取值范围是:[0,255] |
注意
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onConnectionStateChanged(
IGameRTCEventHandler.ConnectionState state)
用户与 RTC 服务器连接状态发生改变时,收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| state | IGameRTCEventHandler.ConnectionState | 用户当前与 RTC 服务器的连接状态,参看 ConnectionState |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onNetworkQuality(
String roomId,
String userId,
IGameRTCEventHandler.NetworkQuality txQuality,
IGameRTCEventHandler.NetworkQuality rxQuality)
通话中用户的媒体流网络上下行质量报告回调。加入房间成功后,每隔 2 秒会触发此回调,通知房间内用户与媒体服务器之间数据交互的网络质量。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| userId | String | 回调的网络质量报告所属用户的用户 ID 。 |
| txQuality | IGameRTCEventHandler.NetworkQuality | 用户的媒体流上行网络质量,参看 NetworkQuality。 |
| rxQuality | IGameRTCEventHandler.NetworkQuality | 用户的媒体流下行网络质量,参看 NetworkQuality。 |
注意
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onLogReport(
String logType,
JSONObject logContent)
上报日志时,回调该事件。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| logType | String | 日志类型 |
| logContent | JSONObject | 日志内容 |
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onEngineWarning(
IGameRTCEventHandler.EngineWarnCode warn)
SDK 运行时出现了引擎相关的警告时,收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| warn | IGameRTCEventHandler.EngineWarnCode | 警告码,详情定义见: EngineWarnCode |
注意 通常情况下,SDK 上报的警告信息可以忽略,SDK 能够自动恢复。
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onRoomWarning(
String roomId,
IGameRTCEventHandler.RoomWarnCode warn)
SDK 运行时,出现房间相关警告,收到此回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| warn | IGameRTCEventHandler.RoomWarnCode | 警告代码,详情定义见: RoomWarnCode |
注意 通常情况下,SDK 上报的警告信息可以忽略,SDK 能够自动恢复。
public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onRoomError(
String roomId,
IGameRTCEventHandler.RoomErrorCode err)
房间相关错误回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID |
| err | IGameRTCEventHandler.RoomErrorCode | 错误码,参见 RoomErrorCode |