初始化SDK

更新时间: 2023/09/26 01:43:51

本文介绍 iOS 端初始化 NERoom SDK 的操作步骤。

公共云

国内环境

如果您的 AppKey 对应的服务区域是国内,初始化 NERoom SDK 的示例代码如下:

let options = NERoomKitOptions(appKey: "appKey")
NERoomKit.shared().initialize(options: options) { code, str, _ in
    if code == 0 {
        // 初始化成功
    } else {
        // 初始化失败
    }
}

海外环境

如果您的 AppKey 对应的服务区域是海外,初始化 NERoom SDK 的示例代码如下:

let options = NERoomKitOptions(appKey: "appKey")
options.extras = ["serverUrl": "https://roomkit-sg.netease.im"]
let serverConfig = NEServerConfig()
serverConfig.imServerConfig = NEIMServerConfig()
serverConfig.roomKitServerConfig = NERoomKitServerConfig()
serverConfig.roomKitServerConfig?.roomServer = "https://roomkit-sg.netease.im"
serverConfig.imServerConfig?.lbs = "https://lbs.netease.im/lbs/conf.jsp"
serverConfig.imServerConfig?.link = "link-sg.netease.im:7000"
options.serverConfig = serverConfig
NERoomKit.shared().initialize(options: options) { code, str, _ in
    if code == 0 {
        // 初始化成功
    } else {
        // 初始化失败
    }
}

  • 在调用初始化方法时,需要启动应用并监听到网络连接后,再调用初始化方法,否则会调用失败。
  • 公共云的初始化 SDK 不能在 AppDelegate 的 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中进行初始化。

私有化

方式1:通过 serverUrl 设置(推荐)

调用 initialize 方法初始化 NERoom 时,配置 NERoomKitOptionsserverUrl 参数为私有化服务器地址。

示例代码如下:

  let options = NERoomKitOptions(appKey: "appKey")
  options.serverUrl = "私有化 NERoom URL"
  NERoomKit.shared().initialize(options: options) { code, msg, _ in
    if code == 0 {
      // 初始化成功
    } else {
      // 初始化失败
    }
  }

方式2:通过配置文件设置

私有云服务器部署完成后,网易云信会提供给您对应的 NERoom 私有化配置文件(JSON 类型)。您在初始化 NERoom SDK 时,需要进行相关的配置,以便 SDK 能接入到目标私有云服务器上。

具体配置步骤如下:

  1. 将配置文件重命名为 xkit_server.config,并在构建项目前将配置文件添加到工程中 APP Target 所在的根目录下(即Info.plist 文件所在目录)。

    同时,您也需要将上述配置文件添加进主 Target 的打包资源配置项中,以确保该文件会打包至 APP 中,否则运行时将无法找到该文件,具体操作方法如下图所示。

    私有化配置.png

  2. 调用 initialze 方法初始化 NERoom SDK 时,配置 xkit_server.configuseAssetServerConfig 参数为 true

    示例代码如下:

    swiftfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    
      /// 读取本地私有化配置文件的形式进行设置,需要在bundle中放置'xkit_server.config'文件
      let options = NERoomKitOptions(appKey: "appKey")
      options.useAssetServerConfig = true
      return options
      NERoomKit.shared().initialize(options: fetchPrivateOptionsWithReadLocalFile()) { code, msg, _ in
        if code == 0 {
          // 初始化成功
        } else {
          // 初始化失败
        }
      }
    }
    

    在私有化场景中,请在 Appdelete 的 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中,进行初始化。

此文档是否对你有帮助?
有帮助
去反馈
  • 公共云
  • 国内环境
  • 海外环境
  • 私有化
  • 方式1:通过 serverUrl 设置(推荐)
  • 方式2:通过配置文件设置