NERtc Android SDK  V5.5.40
Public 成员函数 | 所有成员列表
com.netease.lava.nertc.impl.EmptyNERtcCallbackEx类 参考
类 com.netease.lava.nertc.impl.EmptyNERtcCallbackEx 继承关系图:
com.netease.lava.nertc.sdk.AbsNERtcCallbackEx com.netease.lava.nertc.sdk.NERtcCallbackEx com.netease.lava.nertc.sdk.NERtcCallback

Public 成员函数

void onJoinChannel (int result, long channelId, long elapsed, long uid)
 
void onLeaveChannel (int result)
 
void onUserJoined (long uid)
 
void onUserJoined (long uid, NERtcUserJoinExtraInfo joinExtraInfo)
 
void onUserLeave (long uid, int reason)
 
void onUserLeave (long uid, int reason, NERtcUserLeaveExtraInfo leaveExtraInfo)
 
void onUserAudioStart (long uid)
 
void onUserAudioStop (long uid)
 
void onUserVideoStart (long uid, int maxProfile)
 
void onUserVideoStop (long uid)
 
void onDisconnect (int reason)
 
void onAudioEffectTimestampUpdate (long id, long timestampMs)
 
void onError (int code)
 
void onPermissionKeyWillExpire ()
 
void onUpdatePermissionKey (String key, int error, int timeout)
 
void onLocalVideoWatermarkState (NERtcVideoStreamType videoStreamType, int state)
 
- Public 成员函数 继承自 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx
void onClientRoleChange (int oldRole, int newRole)
 
void onUserSubStreamVideoStart (long uid, int maxProfile)
 
void onUserSubStreamVideoStop (long uid)
 
void onUserAudioMute (long uid, boolean muted)
 
void onUserVideoMute (long uid, boolean muted)
 
void onUserVideoMute (NERtcVideoStreamType streamType, long uid, boolean muted)
 
void onLocalAudioFirstPacketSent (NERtcAudioStreamType audioStreamType)
 
void onFirstAudioDataReceived (long uid)
 
void onFirstVideoDataReceived (long uid)
 
void onFirstVideoFrameRender (long userID, NERtcVideoStreamType streamType, int width, int height, long elapsedTime)
 
void onFirstVideoDataReceived (NERtcVideoStreamType streamType, long uid)
 
void onFirstAudioFrameDecoded (long userID)
 
void onFirstVideoFrameDecoded (long userID, int width, int height)
 
void onFirstVideoFrameDecoded (NERtcVideoStreamType streamType, long userID, int width, int height)
 
void onUserVideoProfileUpdate (long uid, int maxProfile)
 
void onAudioDeviceChanged (final int selected)
 
void onAudioDeviceStateChange (int deviceType, int deviceState)
 
void onVideoDeviceStageChange (int deviceState)
 
void onConnectionTypeChanged (int newConnectionType)
 
void onReconnectingStart ()
 
void onReJoinChannel (int result, long channelId)
 
void onAudioMixingStateChanged (int reason)
 
void onAudioMixingTimestampUpdate (long timestampMs)
 
void onAudioEffectFinished (int effectId)
 
void onLocalAudioVolumeIndication (int volume)
 
void onLocalAudioVolumeIndication (int volume, boolean vadFlag)
 
void onRemoteAudioVolumeIndication (NERtcAudioVolumeInfo[] volumeArray, int totalVolume)
 
void onLiveStreamState (String taskId, String pushUrl, int liveState)
 
void onConnectionStateChanged (int state, int reason)
 
void onCameraFocusChanged (Rect rect)
 
void onCameraExposureChanged (Rect rect)
 
void onRecvSEIMsg (long userID, String seiMsg)
 
void onAudioRecording (int code, String filePath)
 
void onWarning (int code)
 
void onMediaRelayStatesChange (int state, String channelName)
 
void onMediaRelayReceiveEvent (int event, int code, String channelName)
 
void onLocalPublishFallbackToAudioOnly (boolean isFallback, NERtcVideoStreamType streamType)
 
void onRemoteSubscribeFallbackToAudioOnly (long uid, boolean isFallback, NERtcVideoStreamType streamType)
 
void onLastmileQuality (int quality)
 
void onRemoteVideoSizeChanged (long userId, NERtcVideoStreamType videoType, int width, int height)
 
void onLocalVideoRenderSizeChanged (NERtcVideoStreamType videoType, int width, int height)
 
void onLastmileProbeResult (LastmileProbeResult result)
 
void onMediaRightChange (boolean isAudioBannedByServer, boolean isVideoBannedByServer)
 
void onVirtualBackgroundSourceEnabled (boolean enabled, int reason)
 
void onUserSubStreamAudioStart (long uid)
 
void onUserSubStreamAudioStop (long uid)
 
void onUserSubStreamAudioMute (long uid, boolean muted)
 
void onUserDataStart (long uid)
 
void onUserDataStop (long uid)
 
void onUserDataReceiveMessage (long uid, ByteBuffer bufferData, long bufferSize)
 
void onUserDataStateChanged (long uid)
 
void onUserDataBufferedAmountChanged (long uid, long previousAmount)
 
void onApiCallExecuted (String apiName, int result, String message)
 
void onLabFeatureCallback (String key, Object param)
 

成员函数说明

◆ onAudioEffectTimestampUpdate()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onAudioEffectTimestampUpdate ( long  id,
long  timestampMs 
)

本地用户的指定音效文件播放进度回调。

  • 调用 NERtcEx#playEffect() 方法播放音效文件后,SDK 会触发该回调,默认每 1s 返回一次。
    自从
    V4.6.29
    使用前提
    请在 NERtcImpl 接口类中通过 NERtc#init() 接口设置回调监听。
    参数说明
    参数名称 类型 描述
    id long 指定音效文件的 ID。每个音效均有唯一的 ID。
    timestampMs long 指定音效文件的当前播放进度。单位为毫秒。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onDisconnect()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onDisconnect ( int  reason)

网络连接中断,且 SDK 连续 3 次重连服务器失败。
注意

  • SDK 在调用 joinChannel 加入房间成功后,如果和服务器失去连接且连续 3 次重连失败,就会触发该回调。
  • 如果 SDK 在断开连接后,连续 3 次重连失败,SDK 会停止尝试重连。
    参数
    reason网络连接中断原因。详细信息请查看 NERtcConstants.ErrorCode

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onError()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onError ( int  code)

发生错误回调。
该回调方法表示 SDK 运行时出现了网络或媒体相关的错误。
通常情况下,SDK上报的错误意味着 SDK 无法自动恢复,需要 App 干预或提示用户。

参数
codeNERtcConstants.RuntimeError

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onJoinChannel()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onJoinChannel ( int  result,
long  channelId,
long  elapsed,
long  uid 
)

加入房间回调,表示客户端已经登入服务器。

参数
result0 表示加入房间成功;其他值表示加入房间失败,详细错误码请参考 NERtcConstants.ErrorCode
channelId客户端加入的房间 ID。
elapsed从 joinChannel 开始到发生此事件过去的时间,单位为毫秒。
uid用户 ID。如果在 joinChannel 方法中指定了 uid,此处会返回指定的 ID; 如果未指定 uid(joinChannel 时uid=0),此处将返回云信服务器自动分配的 ID。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onLeaveChannel()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onLeaveChannel ( int  result)

退出房间回调。
App 调用 leaveChannel 方法后,SDK 提示 App 退出房间是否成功。

参数
result0 表示成功;其他值表示退出房间失败,错误码请参考 NERtcConstants.ErrorCode。 在快速切换房间时 code 为 NERtcConstants.ErrorCode::LEAVE_CHANNEL_FOR_SWITCH。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onLocalVideoWatermarkState()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onLocalVideoWatermarkState ( NERtcVideoStreamType  videoStreamType,
int  state 
)

本地视频水印生效结果回调。

自从
V4.6.10
参数
videoStreamType对应的视频流类型,即主流或辅流。详细信息请参考 video.NERtcVideoStreamType
state水印状态。详细信息请参考 NERtcConstants.NERtcLocalVideoWatermarkState
参见
NERtcEx::setLocalVideoWatermarkConfigs(NERtcVideoStreamType, NERtcVideoWatermarkConfig)

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onPermissionKeyWillExpire()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onPermissionKeyWillExpire ( )

权限密钥即将过期事件回调。

  • 由于 PermissionKey 具有一定的时效,在通话过程中如果 PermissionKey 即将失效,SDK 会提前 30 秒触发该回调,提醒用户更新 PermissionKey。
    自从
    V4.6.29
    使用前提
    主房间内请在 NERtcCallbackEx 接口类中通过 NERtc#init() 接口设置回调监听。
    相关接口
    在收到此回调后可以调用 NERtc#updatePermissionKey() 方法更新权限密钥。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUpdatePermissionKey()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUpdatePermissionKey ( String  key,
int  error,
int  timeout 
)

更新权限密钥事件回调。

  • 调用 NERtc#updatePermissionKey() 方法主动更新权限密钥后,SDK 会触发该回调,返回权限密钥更新的结果。
    自从
    V4.6.29
    使用前提
    主房间内请在 NERtcCallbackEx 接口类中通过 NERtc#init() 接口设置回调监听。
    注解
    此回调暂不支持在子房间内返回。
    参数说明
    参数名称 类型 描述
    key String 新的权限密钥。
    error int 错误码。更多请参考 NERtcConstants.ErrorCode
    • ENGINE_ERROR_CHANNEL_PERMISSION_KEY_ERROR(30901):权限密钥错误。
    • ENGINE_ERROR_CHANNEL_PERMISSION_KEY_TIMEOUT(30902):权限密钥超时。
    timeout int 更新后的权限密钥剩余有效时间。单位为秒。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserAudioStart()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserAudioStart ( long  uid)

远端用户开启音频回调。

注解
该回调由远端用户调用 enableLocalAudio 方法开启音频采集和发送触发。
参数
uid远端用户 ID。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserAudioStop()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserAudioStop ( long  uid)

远端用户停用音频回调。

注解
该回调由远端用户调用 enableLocalAudio 方法开启音频采集和发送触发。
参数
uid远端用户 ID。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserJoined() [1/2]

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserJoined ( long  uid)

远端用户(通信场景)/主播(直播场景)加入当前频道回调。

  • 通信场景下,该回调提示有远端用户加入了频道,并返回新加入用户的 ID;如果加入之前,已经有其他用户在频道中了,新加入的用户也会收到这些已有用户加入频道的回调
  • 直播场景下,该回调提示有主播加入了频道,并返回该主播的用户 ID。如果在加入之前,已经有主播在频道中了,新加入的用户也会收到已有主播加入频道的回调。

该回调在如下情况下会被触发:

  • 远端用户调用 joinChannel 方法加入房间。
  • 远端用户网络中断后重新加入房间。
    注解
    直播场景下:
    • 主播间能相互收到新主播加入频道的回调,并能获得该主播的用户 ID。
    • 观众也能收到新主播加入频道的回调,并能获得该主播的用户 ID。
    • 当 Web 端加入直播频道时,只要 Web 端有推流,SDK 会默认该 Web 端为主播,并触发该回调。
    参数
    uid新加入房间的远端用户 ID。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserJoined() [2/2]

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserJoined ( long  uid,
NERtcUserJoinExtraInfo  joinExtraInfo 
)

远端用户加入房间事件回调。 远端用户加入房间或断网重连后,SDK 会触发该回调,可以通过返回的用户 ID 订阅对应用户发布的音、视频流。

  • 通信场景下,该回调通知有远端用户加入了房间,并返回新加入用户的 ID;若该用户加入之前,已有其他用户在房间中,该新加入的用户也会收到这些已有用户加入房间的回调。
  • 直播场景下,该回调通知有主播加入了房间,并返回该主播的用户 ID;若该用户加入之前,已经有主播在频道中了,新加入的用户也会收到已有主播加入房间的回调。
    自从
    V4.6.29
    使用前提
    请在 NERtcCallback 或 NERtcCallbackEx 接口类中通过 NERtc#init() 接口设置回调监听。
    注解

同类型事件发生后,NERtcCallback#onUserJoined(long uid) 回调可能会与该回调同时触发,建议您仅注册此回调,不能同时处理两个回调。

  • 当 Web 端用户加入直播场景的房间中,只要该用户发布了媒体流,SDK 会默认该用户为主播,并触发此回调。
    参数说明
    参数名称 类型 描述
    uid long 新加入房间的远端用户 ID。
    joinExtraInfo NERtcUserJoinExtraInfo 该远端用户加入的额外信息。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserLeave() [1/2]

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserLeave ( long  uid,
int  reason 
)

远端用户离开当前房间回调。
提示有远端用户离开了房间(或掉线)。
用户离开房间有两个原因,即正常离开和超时掉线:

  • 正常离开的时候,远端用户会收到消息提示,判断用户离开房间。
  • 超时掉线的依据是,在一定时间内(40~50s),用户没有收到对方的任何数据包,则判定为对方掉线。
    参数
    uid离开房间的远端用户 ID。
    reason离开原因。
  • kNERtcSessionLeaveNormal(0):正常离开。
  • kNERtcSessionLeaveForFailOver(1):用户断线导致离开房间。
  • kNERTCSessionLeaveForUpdate(2):用户因 Failover 导致离开房间,仅 SDK 内部使用。
  • kNERtcSessionLeaveForKick(3):用户被踢导致离开房间。
  • kNERtcSessionLeaveTimeout(4):用户超时退出房间。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserLeave() [2/2]

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserLeave ( long  uid,
int  reason,
NERtcUserLeaveExtraInfo  leaveExtraInfo 
)

远端用户离开房间事件回调。

  • 远端用户离开房间或掉线(在 40 ~ 50 秒内本端用户未收到远端用户的任何数据包)后,SDK 会触发该回调。
    自从
    V4.6.29
    使用前提
    请在 NERtcCallback 接口类中通过 NERtc#init() 接口设置回调监听。
    注解
    同类型事件发生后,NERtcCallback#onUserLeave(long uid,int reason) 回调可能会与该回调同时触发,建议您仅注册此回调,不能同时处理两个回调。
    参数说明
    参数名称 类型 描述
    uid long 离开房间的远端用户 ID。
    reason int 该远端用户离开的原因,更多请参考 NERtcConstants.ErrorCode
    • kNERtcSessionLeaveNormal(0):正常离开。
    • kNERtcSessionLeaveForFailOver(1):用户断线导致离开房间。
    • kNERTCSessionLeaveForUpdate(2):用户因 Failover 导致离开房间,仅 SDK 内部使用。
    • kNERtcSessionLeaveForKick(3):用户被踢导致离开房间。
    • kNERtcSessionLeaveTimeout(4):用户超时退出房间。
    leaveExtraInfo NERtcUserLeaveExtraInfo 该远端用户离开的额外信息。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserVideoStart()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserVideoStart ( long  uid,
int  maxProfile 
)

远端用户开启视频回调。
启用后,用户可以进行视频通话或直播。

参数
uid用户 ID,提示是哪个用户的视频流。
maxProfile视频编码配置,详细信息请参考 NERtcConstants.VideoProfile

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .

◆ onUserVideoStop()

void com.netease.lava.nertc.impl.EmptyNERtcCallbackEx.onUserVideoStop ( long  uid)

远端用户停用视频回调。
关闭后,用户只能进行语音通话或者直播。

参数
uid远端用户 ID。

重载 com.netease.lava.nertc.sdk.AbsNERtcCallbackEx .


该类的文档由以下文件生成: