初始化
在使用 SDK 其它功能前,必须先进行初始化。本文中将详细说明 IMKit SDK 初始化的方法。
首次使用融云的用户,我们建议先阅读 IMKit SDK 快速上手,以完成开发者账号注册等工作。
准备 App Key
您必须拥有正确的 App Key,才能进行初始化。
您可以控制台,查看您已创建的各个应用的 App Key。
如果您拥有多个应用,请注意选择应用名称(下图中标号 1)。另外,融云的每个应用都提供用于隔离生产和开发环境的两套独立 App Key / Secret。在获取应用的 App Key 时,请注意区分环境(生产 / 开发,下图中标号 2)。
提示
- 如果您并非应用创建者,我们建议在获取 App Key 时确认页面上显示的数据中心是否符合预期。
- 如果您尚未向融云申请应用上线,仅可使用开发环境。
海外数据中心
- 如果您使用海外数据中心,必须在 IMKit 的初始化参数
LibOption
参数中将 SDK 连接的服务地址为海外数据中心地址。否则 SDK 默认连接中国国内数据中心服务地址。详细说明请参见配置海外数据中心服务地址。
初始化 SDK
IMKit 初始化流程如下:
- 在 IMKit 初始化前,请先初始化 RongIMLib,获取 RongIMLib 实例。此处需传入 IMLib 的初始 化配置 IInitOption。详见 IMLib 初始化参数说明。
- 实现应用层向 IMKit SDK 传入用户、群组、会话的名称和头像等信息的方法,并在初始化参数
service
中传入,否则 IMKit 无法展示头像和昵称。 - 调用 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
});
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
appkey | String | 是 | 从控制台获取的应用的唯一标识。请注意区分生产/开发环境的 App Key。 |
libOption | IInitOption | 是 | IMKit 依赖 IMLib,此处需传入 IMLib 的初始化配置 IInitOption 。详 见 IMLib 初始化参数说明。 |
service | Object | 是 | 获取用户信息、群组信息等接口配置。IMKit 需要在 UI 上展示用户和群组的头像、昵称等信息时,需要应用层(App)提供相关数据。您需要实现向 SDK 提供用户、群组、会话的 name 和 portraitUri 信息的相关方法。详见用户信息。 |
conversationPullCount | Number | 否 | 获取会话数量,默认值 30,数值范围 [1 - 1000]。 |
customMessage | Object | 否 | 设置自定义消息展示。详见展示自定义消息。 |
customIntercept | Object | 否 | 会话过滤回调,可设置会话是否展示,返回值中 true 为不展示,false 为正常展示。详见会话过滤。 |