跳到主要内容

初始化

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

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

准备 App Key

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

您可以登录融云控制台,从服务管理页面,查看您已创建的各个应用的 App Key。

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

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

appkey

海外数据中心

  • 如果您使用海外数据中心,且使用 5.4.2 及更新版本的开发版(dev)SDK,请注意在初始化配置中传入正确的区域码(RCAreaCode)。
  • 如果您使用海外数据中心,且使用稳定版(stable) SDK,或使用早于 5.4.2 版本的开发版(dev)SDK,必须在初始化之前修改 IMLib SDK 连接的服务地址为海外数据中心地址。否则 SDK 默认连接中国国内数据中心服务地址。详细说明请参见配置海外数据中心服务地址

初始化 SDK

提示

以下初始化方法要求 SDK 版本 ≧ 5.4.2。您可前往 融云官网 SDK 下载页面 查询最新开发版(Dev)和稳定版(Stable)的版本号。

导入 SDK 头文件

#import <RongIMKit/RongIMKit.h>

请在初始化方法中传入生产开发环境的 App Key。

NSString *appKey = @"Your_AppKey"; // example: bos9p5rlcm2ba
RCInitOption *initOption = nil;

[[RCIM sharedRCIM] initWithAppKey:appKey option:initOption];

初始化配置(RCInitOption)中封装了区域码(RCAreaCode)配置。SDK 将通过区域码获取有效的导航服务地址、文件服务地址、数据统计服务地址、和日志服务地址等配置。

  • 如果 App Key 属于中国(北京)数据中心,您无需配置额外配置 RCInitOption,SDK 将全部使用默认配置。
  • 请务必在控制台核验当前 App Key 所属海外数据中心后,找到 RCAreaCode 中对应的枚举值进行配置。

例如,如果使用新加坡数据中心,配置如下:

NSString *appKey = @"Your_AppKey"; // example: bos9p5rlcm2ba
RCInitOption *initOption = [[RCInitOption alloc] init];
initOption.areaCode = RCAreaCodeSG;

[[RCIM sharedRCIM] initWithAppKey:appKey option:initOption];

除区域码外,初始化配置(InitOption)中还封装了以下配置:

  • 导航服务地址(naviServer):一般情况下不建议单独配置。SDK 内部默认使用与区域码对应的地址。
  • 文件服务地址(fileServer):仅限私有云使用。
  • 数据统计服务地址(statisticServer):一般情况下不建议单独配置。SDK 内部默认使用与区域码对应的地址。
NSString *appKey = @"Your_AppKey"; // example: bos9p5rlcm2ba
RCInitOption *initOption = [[RCInitOption alloc] init];
initOption.areaCode = RCAreaCodeSG;
initOption.naviServer = @"http(s)://naviServer";
initOption.fileServer = @"http(s)://fileServer";
initOption.statisticServer = @"http(s)://statsServer";
[[RCIM sharedRCIM] initWithAppKey:appKey option:initOption];

初始化 SDK(旧版)

提示

如果您使用的开发版 SDK 版本号小于 5.4.2,或者稳定版 SDK 版本号小于等于 5.3.8,只能使用以下方式初始化。建议您及时升级 SDK 到最新版本。

导入 SDK 头文件。

#import <RongIMKit/RongIMKit.h>

在初始化方法中传入应用的开发环境或生产环境 AppKey,请勿混淆。

[[RCIM sharedRCIM] initWithAppKey:@"融云 AppKey"];