初始化相关
- Android
更新时间不可用
addHandler
添加事件处理器。
public void addHandler(IRtcEngineEventHandler handler)SDK 使用 IRtcEngineEventHandler 将回调发送到 App。你可以继承该类中的方法以接收回调。该类中的所有方法都有默认(空)实现,因此你只需根据实际场景继承所需的回调方法。 在回调中应避免执行耗时操作或调用可能阻塞线程的 API,例如 sendStreamMessage,否则可能导致 SDK 无法正常工作。
参数
| 参数名 | 描述 |
|---|---|
handler | 要添加的回调事件处理器,详见 IRtcEngineEventHandler。 |
所属接口类
create [1/2]
创建并初始化 RtcEngine 实例。
public static synchronized RtcEngine create(Context context, String appId, IRtcEngineEventHandler handler) throws ExceptionRtcEngine 类中的所有方法均为异步执行,声网建议在同一线程中调用这些方法。
注:
- 在调用其他 API 之前,必须先调用此方法以创建 RtcEngine 实例。
- 你可以通过调用此方法或调用 create [2/2] 来创建 RtcEngine 实例。与此方法相比,create [2/2] 支持更多配置,例如指定连接区域和设置日志文件。
- 每个 App 仅支持创建一个 RtcEngine 实例。
参数
| 参数名 | 描述 |
|---|---|
context | |
appId | 声网为你的项目签发的 App ID。只有使用相同 App ID 的用户才能加入同一个频道并进行通信。一个 App ID 只能用于创建一个 RtcEngine 实例。若需更换 App ID,请调用 destroy [2/2] 销毁当前 RtcEngine 实例,然后再创建新的实例。 |
handler | RtcEngine 的事件处理器。详见 IRtcEngineEventHandler。 |
返回值
方法调用成功,返回已初始化的 RtcEngine 实例。 方法调用失败,SDK 会抛出异常,并返回相应的错误信息。你需要捕获异常并进行处理。
所属接口类
destroy [2/2]
销毁 RtcEngine 实例并释放相关资源。
public static synchronized void destroy(@Nullable IRtcEngineReleaseCallback callback)自从
自 v4.6.0 版本新增。
当你不再需要实时通信时,调用该方法以释放 RtcEngine 实例,使相关资源可用于其他操作。推荐在语音通话或视频通话等场景中使用。
参数
| 参数名 | 描述 |
|---|---|
callback | 用于配置引擎的同步或异步销毁方式:
|
所属接口类
create [2/2]
创建并初始化 RtcEngine 实例。
public static synchronized RtcEngine create(RtcEngineConfig config) throws Exception你可以通过调用此方法或 create [1/2] 方法来创建 RtcEngine 实例。与后者相比,此方法支持更多配置选项,例如指定连接区域和设置日志文件。
调用时机
在调用其他 API 之前,必须先调用此方法创建 RtcEngine 对象。
参数
| 参数名 | 描述 |
|---|---|
config | 用于配置 RtcEngine 实例的参数。详见 RtcEngineConfig。 |
返回值
方法调用成功,返回初始化后的 RtcEngine 对象。 方法调用失败,SDK 会抛出异常,并返回相应的错误信息。你需要捕获异常并进行处理。
所属接口类
destroy [1/2]
释放 RtcEngine 实例。
public static synchronized void destroy()该方法释放所有由声网 SDK 占用的资源。成功调用该方法后,将无法再使用 SDK 中的任何方法或回调。如需再次使用实时通信功能,必须调用 create [2/2] 创建新的 RtcEngine 实例。
注: 不建议在 SDK 的任何回调中调用该方法。否则,SDK 需等待回调返回结果后才能释放资源,可能导致死锁。
所属接口类
removeHandler
移除指定的 IRtcEngineEventHandler 实例。
public void removeHandler(IRtcEngineEventHandler handler)该方法用于移除指定的回调处理器。对于只需监听一次的回调事件,在接收到事件后,可以调用该方法移除对应的回调处理器。
参数
| 参数名 | 描述 |
|---|---|
handler | 要移除的回调处理器。详见 IRtcEngineEventHandler。 |
所属接口类
onEngineReleased
RtcEngine 被释放时触发的回调。
@CalledByNative void onEngineReleased();该回调在调用 destroy [2/2] 方法以异步方式释放 RtcEngine 对象时被触发。
触发时机
该回调在调用 destroy [2/2] 方法以异步方式释放 RtcEngine 对象时被触发。