NERtc Android SDK
Public 成员函数 | 静态 Public 成员函数 | 所有成员列表
com.netease.lava.nertc.sdk.NERtc类 参考abstract
类 com.netease.lava.nertc.sdk.NERtc 继承关系图:
com.netease.lava.nertc.sdk.NERtcEx

Public 成员函数

abstract void init (Context context, String appkey, NERtcCallback callback, NERtcOption option) throws Exception
 
abstract void release ()
 
abstract int joinChannel (String token, String channelName, long uid)
 
abstract int leaveChannel ()
 
abstract int enableLocalAudio (boolean enable)
 
abstract int subscribeRemoteAudioStream (long uid, boolean subscribe)
 
abstract int subscribeAllRemoteAudioStreams (boolean subscribe)
 
abstract int setAudioProfile (int profile, int scenario)
 
abstract int setLocalVideoConfig (NERtcVideoConfig videoConfig)
 
abstract int startVideoPreview ()
 
abstract int stopVideoPreview ()
 
abstract int setupLocalVideoCanvas (IVideoRender render)
 
abstract int setupRemoteVideoCanvas (IVideoRender render, long uid)
 
abstract int enableLocalVideo (boolean enable)
 
abstract int subscribeRemoteVideoStream (long uid, NERtcRemoteVideoStreamType streamType, boolean subscribe)
 
abstract void setParameters (NERtcParameters params) throws IllegalArgumentException
 

静态 Public 成员函数

static NERtc getInstance ()
 
static NERtcVersion version ()
 
static List< String > checkPermission (Context context)
 

成员函数说明

◆ checkPermission()

static List<String> com.netease.lava.nertc.sdk.NERtc.checkPermission ( Context  context)
static

音视频通话相关的多媒体设备权限检查。

参数
context上下文。
返回
返回缺失的权限。

◆ enableLocalAudio()

abstract int com.netease.lava.nertc.sdk.NERtc.enableLocalAudio ( boolean  enable)
abstract

开启/关闭本地音频采集。
当 App 加入房间时,语音功能默认为开启状态。
该方法不影响接收或播放远端音频流,enableLocalAudio(false) 适用于只下行不上行音频流的场景。

注意

  • 该方法与 muteLocalAudioStream 的区别在于,enableLocalAudio 用于开启本地语音采集及处理;muteLocalAudioStream 用于停止或继续发送本地音频流。
  • 该方法设置内部引擎为启用状态,在 leaveChannel 后仍然有效。
参数
enable是否开启本地语音。
  • true:(默认)重新开启本地语音,即开启本地语音采集。
  • false: 关闭本地语音,即停止本地语音采集。
返回
0
方法调用成功,其他失败

◆ enableLocalVideo()

abstract int com.netease.lava.nertc.sdk.NERtc.enableLocalVideo ( boolean  enable)
abstract

是否开启本地视频采集。

注意

  • 该方法在加入房间前和加入房间后均可调用。
  • 成功启用或禁用本地视频采集后,远端会触发 onUserVideoStop 或 onUserVideoStart 回调。
参数
enable是否启用本地视频采集:
  • true:(默认)开启本地视频采集。
  • false:关闭本地摄像头设备。关闭后,远端用户会接收不到本地用户的视频流;但本地用户依然可以接收远端用户的视频流。
返回
0
方法调用成功,其他调用失败

◆ getInstance()

static NERtc com.netease.lava.nertc.sdk.NERtc.getInstance ( )
static

获取 NERtc 实例。

返回
NERtc 实例

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

◆ init()

abstract void com.netease.lava.nertc.sdk.NERtc.init ( Context  context,
String  appkey,
NERtcCallback  callback,
NERtcOption  option 
) throws Exception
abstract

创建 NERtc 实例并初始化 NERTC SDK 服务。

  • 请确保在调用其他 API 前先调用该方法创建并初始化 NERtc 实例。
  • 使用同一个 App Key 的 App 才能进入同一个房间进行通话或直播。
  • 一个 App Key 只能用于创建一个 NERtc 实例。如需更换 App Key,必须先调用 NERtc#release() 方法销毁当前实例,再调用本方法重新创建实例。
  • 若不再使用 NERtc 实例,需要 NERtc#release() 调用进行销毁。
  • 创建实例时,如果参数设置错误,可能会出现异常 RuntimeException、UnsatisfiedLinkError。
参数
context传入的 RTC engine context 对象。
appkey应用的 App Key。在 云信控制台 创建应用后,可以查看对应的 App Key。
callback回调函数,所有接口均在主线程上回调。
option其他可选配置,详细信息请参考 NERtcOption 。可设置为 null。

◆ joinChannel()

abstract int com.netease.lava.nertc.sdk.NERtc.joinChannel ( String  token,
String  channelName,
long  uid 
)
abstract

加入音视频房间。
加入音视频房间时,如果指定房间尚未创建,云信服务器内部会自动创建一个同名房间。

@apiNote

注意

  • SDK 加入房间后,同一个房间内的用户可以互相通话,多个用户加入同一个房间,可以群聊。使用不同 App Key 的 App 之间不能互通。
  • 成功调用该方加入房间后,本地会触发 onJoinChannel 回调,远端会触发 onUserJoined 回调。
  • 用户成功加入房间后,默认订阅房间内所有其他用户的音频流,可能会因此产生用量并影响计费。如果想取消订阅,可以通过调用相应的 mute 方法实现。
  • 直播场景中,观众角色可以通过 switchChannel 切换房间。
参数
token安全认证签名(NERTC Token)。可设置为:
  • null。非安全模式下可设置为 null。安全性不高,建议在产品正式上线前联系对应商务经理转为安全模式。
  • 已获取的NERTC Token。安全模式下必须设置为获取到的 Token 。若未传入正确的 Token 将无法进入房间。推荐使用安全模式。
channelName房间名称,设置相同房间名称的用户会进入同一个通话房间。
  • 字符串格式,长度为 1~64 字节。
  • 支持以下89个字符:a-z, A-Z, 0-9, space, !#$%&()+-:;≤.,>? @[]^_{|}~”
uid用户的唯一标识 id,房间内每个用户的 uid 必须是唯一的。不可设置为 0 或负数。
返回
0
方法调用成功,其他失败
参见
NERtc::leaveChannel()

◆ leaveChannel()

abstract int com.netease.lava.nertc.sdk.NERtc.leaveChannel ( )
abstract

离开房间,即挂断或退出通话。
结束通话时,必须调用 leaveChannel 结束通话,否则无法开始下一次通话。
成功调用该方法离开房间后,本地会触发 onLeaveChannel 回调,远端会触发 onUserLeave 回调。

返回
0
成功,其他失败.
参见
NERtc::joinChannel(String, String, long)

◆ release()

abstract void com.netease.lava.nertc.sdk.NERtc.release ( )
abstract

销毁 NERtc 实例,释放资源。
该方法释放 NERTC SDK 使用的所有资源。有些 App 只在用户需要时才进行实时音视频通信,不需要时则将资源释放出来用于其他操作,该方法适用于此类情况。
调用 release 方法后,您将无法再使用 SDK 的其它方法和回调。如需再次使用实时音视频通话功能,您必须重新创建一个新的 NERtc 实例。

注意:如需在销毁后再次创建 NERtc 实例,需要等待 NERtc#release() 方法执行结束后再创建实例。

◆ setAudioProfile()

abstract int com.netease.lava.nertc.sdk.NERtc.setAudioProfile ( int  profile,
int  scenario 
)
abstract

设置音频编码属性。

注意:该方法需要在 joinChannel 之前设置,joinChannel 后设置不生效。

参数
profile设置采样率、码率、编码模式和声道数。详细信息请参考 NERtcConstants.AudioProfile
scenario设置音频应用场景。详细信息请参考 NERtcConstants.AudioScenario
返回
0
方法调用成功,其他失败

◆ setLocalVideoConfig()

abstract int com.netease.lava.nertc.sdk.NERtc.setLocalVideoConfig ( NERtcVideoConfig  videoConfig)
abstract

设置本地视频的编码属性。

注解
  • 可以在加入房间前或加入房间后调用。
  • 设置成功后,下一次开启本端视频时生效。
  • 每个属性对应一套视频参数,例如分辨率、帧率、码率等。 所有设置的参数均为理想情况下的最大值。

    当视频引擎因网络环境等原因无法达到设置的分辨率、帧率或码率的最大值时,会取最接近最大值的那个值。

参数
videoConfig视频编码属性配置,详细信息请参考 video.NERtcVideoConfig
返回
0
方法调用成功,其他调用失败

◆ setParameters()

abstract void com.netease.lava.nertc.sdk.NERtc.setParameters ( NERtcParameters  params) throws IllegalArgumentException
abstract

设置音视频通话的相关参数。

注意

  • 请在调用 init 初始化之前调用此方法。
  • 此方法提供技术预览或特别定制功能,若您需要使用此接口,请咨询技术支持获取帮助。
参数
params音视频通话的相关参数。

◆ setupLocalVideoCanvas()

abstract int com.netease.lava.nertc.sdk.NERtc.setupLocalVideoCanvas ( IVideoRender  render)
abstract

设置本地视图。
该方法设置本地视频显示信息。只影响本地用户看到的视频画面,不影响远端。 App 通过调用此接口绑定本地视频流的显示视窗(view)。
在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。

参数
render视频画布。详细信息请参考 NERtcVideoView。
返回
0
方法调用成功,其他调用失败
参见
NERtcVideoView

◆ setupRemoteVideoCanvas()

abstract int com.netease.lava.nertc.sdk.NERtc.setupRemoteVideoCanvas ( IVideoRender  render,
long  uid 
)
abstract

设置远端用户视图。
该方法绑定远端用户和显示视图,并设置远端用户视图在本地显示时的渲染模式和镜像模式,只影响本地用户看到的视频画面。

注意

  • 如果 App 无法事先知道对方的用户 ID,可以在 APP 收到 onUserJoined 事件时设置。
  • 解除某个用户的绑定视图可以把 render 设置为空。
  • 退出房间后,SDK 会清除远程用户和视图的绑定关系。
参数
render视频画布。详细信息请参考 NERtcVideoView。
uid远端用户 ID。
返回
0
方法调用成功,其他调用失败
参见
NERtcVideoView

◆ startVideoPreview()

abstract int com.netease.lava.nertc.sdk.NERtc.startVideoPreview ( )
abstract

开启视频预览。

  • 该方法用于在进入房间前启动本地视频预览。调用该 API 前,必须调用 setupLocalVideoCanvas 设置视频画布。
  • 启用本地视频预览后,在进入频道前,必须先调用 stopVideoPreview 关闭本地预览。
返回
0
方法调用成功,其他调用失败

◆ stopVideoPreview()

abstract int com.netease.lava.nertc.sdk.NERtc.stopVideoPreview ( )
abstract

停止视频预览。

注意:该方法需要在加入房间前调用。

返回
0
方法调用成功,其他调用失败

◆ subscribeAllRemoteAudioStreams()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeAllRemoteAudioStreams ( boolean  subscribe)
abstract

取消或恢复订阅所有远端用户音频流。

注解
  • 加入房间时,默认订阅所有远端用户的音频,此时请勿调用 subscribeAllRemoteAudioStreams(true) 重复订阅所有远端用户的音频流。
  • 该方法需要在加入房间后调用。
  • 对后续加入的用户也同样生效。
参数
subscribe是否取消订阅所有远端用户的音频流。 true:(默认)订阅音频流。 false: 取消订阅音频流。
返回
0
方法调用成功,其他失败

◆ subscribeRemoteAudioStream()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeRemoteAudioStream ( long  uid,
boolean  subscribe 
)
abstract

取消或恢复订阅指定远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频流。

注意:该方法需要在加入房间后调用。

参数
uid指定用户的 ID。
subscribe是否订阅指定音频流。
  • true:(默认)订阅音频流。
  • false: 取消订阅音频流。
返回
0
方法调用成功,其他失败

◆ subscribeRemoteVideoStream()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeRemoteVideoStream ( long  uid,
NERtcRemoteVideoStreamType  streamType,
boolean  subscribe 
)
abstract

订阅或取消订阅指定远端用户的视频流。
用户加入房间之后,默认不订阅远端用户的视频流,如果希望看到指定远端用户的视频,可以在监听到对方加入房间或发布视频流之后,通过此方法订阅该用户的视频流。
该方法需要在加入房间后调用。

参数
uid指定用户的用户 ID。
streamType订阅的视频流类型,详细信息请参考 video.NERtcRemoteVideoStreamType
subscribe是否取消订阅本地视频流。
  • true:(默认)订阅指定视频流。
  • false:不订阅指定视频流。
返回
0
方法调用成功,其他调用失败

◆ version()

static NERtcVersion com.netease.lava.nertc.sdk.NERtc.version ( )
static

查询 SDK 版本号。
该方法在加入房间前后都能调用。

返回
NERtcVersion 版本号

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