跳到主要内容

初始化

在使用 SDK 其它功能前,必须先进行初始化。本文中将详细说明 CallLib 初始化的方法。

注意事项

  • 必须在应用生命周期内调用初始化方法,只需要调用一次。
  • 初始化后,会启动应用主进程、与应用包名相关的 IPC 进程、以及融云默认推送进程。详情请参考关于多进程的说明

准备 App Key

您必须拥有正确的 App Key,才能进行初始化。

您可以控制台,查看您已创建的各个应用的 App Key。

如果您拥有多个应用,请注意选择应用名称(下图中标号 1)。另外,融云的每个应用都提供用于隔离生产和开发环境的两套独立 App Key / Secret。在获取应用的 App Key 时,请注意区分环境(生产 / 开发,下图中标号 2)。

注意

  • 如果您并非应用创建者,我们建议在获取 App Key 时确认页面上显示的数据中心是否符合预期。
  • 如果您尚未向融云申请应用上线,仅可使用开发环境。

appkey

初始化之前

部分配置必须在初始化之前完成,否则 SDK 功能无法正常工作。

  • 开通音视频服务:音视频服务需要手动开通。请根据应用的具体业务类型,开通对应的音视频服务。详细说明请参见开通音视频服务
  • 海外数据中心:因为音视频业务依赖即时通讯业务 IMLib 提供信令通道,如果您的应用使用海外数据中心,必须在初始化之前修改 IMLib SDK 默认连接的服务地址为海外数据中心地址。否则 SDK 默认连接中国国内数据中心服务地址。详细说明请参见配置海外数据中心服务地址

初始化接口

音视频 SDK 是基于即时通信 SDK 作为信令通道的,所以要先初始化 IM SDK。如果不换 AppKey,在整个应用生命周期中,初始化一次即可。建议调用位置放在 Application 的 onCreate() 方法内,或在音视频功能模块的加载位置处。

public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
RongIMClient.init(this, "从控制台申请的 AppKey");
}
}

最简单的情况,您可以使用 RongIMClient.init() 方法,在应用启动时进行初始化,并直接传入 App Key。

注意

  • 请注意 IMLib 核心类为 RongIMClient

  • 必须在应用生命周期内调用初始化方法,只需要调用一次。

关于多进程的说明

融云 SDK 采用了多进程机制,初始化之后,应用会启动以下进程:

  1. 应用的主进程
  2. <应用包名>:ipc。此进程是 IM 通信的核心进程,和主进程任务相互隔离。
  3. io.rong.push:融云默认推送进程。该进程是否启动由推送通道的启用策略决定。详细说明可参考启用推送