用户信息管理类,负责更新及获取用户属性。

Methods

  • 添加用户信息更新监听器。

    重复添加同一监听器实例无效。

    Parameters

    • listener: UserInfoListener

      要添加的监听器,重复添加同一实例无效。

    Returns void

  • 获取已订阅用户信息变更的非好友用户信息。

    Returns Promise<UserInfo[]>

    • 返回已订阅用户信息的 Promise 结果。
  • 根据用户 ID 和用户属性获取用户信息。

    Parameters

    Returns Promise<Map<string, UserInfo>>

    • 返回用户属性的 Promise 结果。
  • 从本地缓存获取用户信息。

    该方法只读取本地数据库缓存,不发起网络请求。若用户 ID 为空或用户 ID 数组为空,返回的 Promise 会 reject,错误码为 ChatError.USER_ILLEGAL_ARGUMENT

    Parameters

    • userId: string | string[]

      用户 ID 或用户 ID 数组。

    Returns Promise<Map<string, UserInfo>>

    • 返回本地缓存用户信息的 Promise 结果,key 为用户 ID。
  • 从本地缓存获取单个用户信息。

    该方法只读取本地数据库缓存,不发起网络请求。若 userId 为空,或本地缓存中不存在该用户信息,返回 undefined。

    Parameters

    • userId: string

      用户 ID。

    Returns UserInfo

    • 本地缓存中的用户信息。未找到时返回 undefined。
  • 移除之前添加的用户信息更新监听器。

    Parameters

    Returns void

  • 订阅非好友用户的用户信息变更事件。

    订阅后,当被订阅用户的信息发生变化时会收到通知。

    Parameters

    • userIds: string[]

      要订阅的非好友用户 ID 数组。

    Returns Promise<void>

    • 返回订阅操作的 Promise 结果。
  • 取消订阅非好友用户的用户信息变更事件。

    Parameters

    • userIds: string[]

      要取消订阅的非好友用户 ID 数组。

    Returns Promise<void>

    • 返回取消订阅操作的 Promise 结果。
  • 修改当前用户的信息。

    Parameters

    • userInfo: UserInfo

      要修改的用户信息。

    Returns Promise<UserInfo>

    • 返回修改当前用户信息的 Promise 结果。
  • 修改当前用户的指定信息。

    Parameters

    • userInfoType: UserInfoType

      用户属性字段。

    • value: string | Gender

      修改的信息(value 为空的时候会把设置的 attribute 删除)。

    Returns Promise<UserInfo>

    • 返回修改当前用户信息的 Promise 结果。