跳到主要内容

初始化

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

首次使用融云的用户,我们建议先阅读 IMKit SDK 快速上手,以完成开发者账号注册等工作。

准备 App Key

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

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

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

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

appkey

海外数据中心

  • 如果您使用海外数据中心,必须在 IMKit 的初始化参数 LibOption 参数中将 SDK 连接的服务地址为海外数据中心地址。否则 SDK 默认连接中国国内数据中心服务地址。详细说明请参见配置海外数据中心服务地址

初始化 SDK

IMKit 初始化流程如下:

  1. 在 IMKit 初始化前,请先初始化 RongIMLib,获取 RongIMLib 实例。此处需传入 IMLib 的初始化配置 IInitOption。详见 IMLib 初始化参数说明
  2. 实现应用层向 IMKit SDK 传入用户、群组、会话的名称和头像等信息的方法,并在初始化参数 service 中传入,否则 IMKit 无法展示头像和昵称。
  3. 调用 IMKit SDK 的 init 方法进行初始化,在应用生命周期内,只需要调用一次。

以下示例仅简单呈现了 IMKit 初始化的流程,该示例单独在 custom_service.js 中实现了提供用户信息、群组信息的方法,相关代码可参见用户信息

// 用于向 IMKit SDK 提供用户信息、群组信息等数据
import {custom_service} from './custom_service.js'

// IMKit 初始化参数 appkey,从控制台获取
const yourAppKey = "Your own App Key";

// IMLib 的初始化配置,appkey 为必填参数,其他字段参见 IInitOption
let libOption = {appkey: yourAppKey};

// 获取 RongIMLib 实例对象,请务必保证此过程只被执行一次
RongIMLib.init(libOption);

imkit.init({
appkey: yourAppKey,
service: custom_service,
libOption: libOption
});
参数类型必填说明
appkeyString从控制台获取的应用的唯一标识。请注意区分生产/开发环境的 App Key。
libOptionIInitOptionIMKit 依赖 IMLib,此处需传入 IMLib 的初始化配置 IInitOption。详见 IMLib 初始化参数说明
serviceObject获取用户信息、群组信息等接口配置。IMKit 需要在 UI 上展示用户和群组的头像、昵称等信息时,需要应用层(App)提供相关数据。您需要实现向 SDK 提供用户、群组、会话的 name 和 portraitUri 信息的相关方法。详见用户信息
conversationPullCountNumber获取会话数量,默认值 30,数值范围 [1 - 1000]。
customMessageObject设置自定义消息展示。详见展示自定义消息
customInterceptObject会话过滤回调,可设置会话是否展示,返回值中 true 为不展示,false 为正常展示。详见会话过滤