初始化 Web/uni-app/小程序 SDK

更新时间: 2024/10/31 15:03:31

本文介绍如何初始化适配 Web 类型应用的 V10 系列网易云信即时通讯 SDK(简称 NIM SDK)。初始化的模块主要包括 IM 消息、会话、用户资料、好友关系、用户关系、群组。

调用时机

对 NIM SDK 进行初始化的时机,是在调用各项即时通讯功能之前。一般情况下,在应用的生命周期内,仅需进行一次初始化。

前提条件

初始化 NIM SDK 前,请确保您已经完成了以下操作:

实现初始化

调用 V2NIM.getInstance 方法创建 NIM 实例,同时配置初始化参数。

  • V2NIM.getInstance 方法为单例模式,对于同一个账号永远返回同一个实例,即只在第一次调用时初始化一个实例,后续调用该方法会直接返回初始化过的实例。

  • 如需更新初始化配置,不建议继续调用 V2NIM.getInstance 方法,推荐调用 setOptions 方法更新原 SDK 实例的初始化配置。

    如果您需要使用 V10 NIM SDK API,请将 NIMInitializeOptions.apiVersion 参数取值设置为 v2

参数说明

TypeScriptgetInstance(_options?: NIMInitializeOptions, _otherOptions?: NIMOtherOptions): NIMInterface
参数名称 类型 是否必填 默认值 说明
_options NIMInitializeOptions 见下文 初始化基础配置项。
_otherOptions NIMOtherOptions 见下文 初始化其他配置项。

NIMInitializeOptions 全部参数请参考 NIMInitializeOptions部分重要 参数说明如下表所示:

名称 类型 是否必填 默认值 说明
appkey string - 应用的 App Key,在 网易云信控制台 创建应用后获取。
apiVersion string v1 使用 API 版本。
如需使用 V10 SDK 接口,请设置为 v2
debugLevel string off 日志等级。
  • off:不输出任何日志
  • debug:输出所有日志 <li>log:输出 log、warn、error 级别的日志
  • warn:输出 warn、error 级别的日志
  • error:输出 error 级别的日志。
  • NIMOtherOptions 全部参数请参考 NIMOtherOptions部分重要 参数说明如下表所示:

    名称 类型 是否必填 默认值 说明
    V2NIMLoginServiceConfig NIMEModuleParamV2Login - 使用 V10 SDK 登录的相关配置项。
    cloudStorageConfig NIMEModuleParamCloudStorageConfig - 云存储配置,如需使用融合存储需要提前引入 AWS SDK,并设置 s3 参数。

    NIMEModuleParamV2Login 参数说明:

    名称 类型 是否必填 默认值 说明
    lbsUrls Array 网易云信公网提供的链接 LBS 地址。SDK 连接时会向 LBS 地址请求得到 socket 连接地址。
    linkUrl string null socket 备用地址,当 LBS 请求失败时,尝试直接连接 socket 备用地址。
    isFixedDeviceId boolean false deviceId 是否需要固定。
    customClientType number 自定义客户端类型。
    customTag string 自定义客户端标签。

    示例代码

    浏览器环境&uni-app 编译为非小程序环境
    TypeScriptconst nim = NIM.getInstance(
      /**
       * param1: NIMInitializeOptions
       */
      {
        appkey: "YOUR_APPKEY",
        debugLevel: "debug",
        apiVersion: "v2"
      }
    )
    
    小程序环境&uni-app 编译为小程序环境
    TypeScriptconst nim = NIM.getInstance(
      /**
       * param1: NIMInitializeOptions
       */
      {
      appkey: "YOUR_APPKEY",
      debugLevel: "debug",
      apiVersion: "v2"
    }, {
      V2NIMLoginServiceConfig: {
        lbsUrls: [
          "https://lbs.netease.im/lbs/wxwebconf.jsp"
        ],
        linkUrl: "wlnimsc0.netease.im"
      }
    });
    

    下一步

    完成初始化后,您可以尝试 登录 IM

    此文档是否对你有帮助?
    有帮助
    去反馈
    • 调用时机
    • 前提条件
    • 实现初始化
    • 参数说明
    • 示例代码
    • 下一步