human: 如何处理七牛云的即时通讯QNIMClient

gpt: [即时通讯](https://developer.qiniu.com/IM) > API 文档 > [ANDROID
API](https://developer.qiniu.com/IM/api/8191/android-im-class-indexes) >
QNIMClient

#  QNIMClient

最近更新时间: 2022-07-22 22:45:05

class com.qiniu.droid.imsdk.QNIMClient

七牛im 客户端

Index

方法

  * delete
  * init
  * isInit
  * getChatRoomManager
  * getChatRoomService
  * getSDKConfig
  * getUserService
  * getChatService
  * getGroupService
  * getRosterService
  * getPushService
  * getUserManager
  * getChatManager
  * getGroupManager
  * getRosterManager
  * getPushManager
  * signUpNewUser
  * signInByName
  * signInById
  * fastSignInByName
  * fastSignInById
  * signOut
  * signOut
  * signOut
  * connectStatus
  * signInStatus
  * reconnect
  * onNetworkChanged
  * disconnect
  * changeAppId
  * changeAppId
  * initializeServerConfig
  * sendMessage

方法

delete

  * public static void delete();
  * Returns void

init

  * public static void init(BMXSDKConfig config);
  * 创建 QNIMClient

Parameters

    * config: [BMXSDKConfig](https://developer.qiniu.com/IM/api/8284/bmxsdkconfig)

im配置

Returns void

isInit

  * public static boolean isInit();
  * Returns boolean

getChatRoomManager

  * public static BXMChatRoomManager getChatRoomManager();
  * 获得聊天室管理

Returns
[BXMChatRoomManager](https://developer.qiniu.com/IM/api/8298/bxmchatroommanager)

getChatRoomService

  * public static BXMChatRoomService getChatRoomService();
  * 获得聊天室服务

Returns
[BXMChatRoomService](https://developer.qiniu.com/IM/api/8200/bxmchatroomservice)

getSDKConfig

  * public static BMXSDKConfig getSDKConfig();
  * 获取SDK设置

Returns [BMXSDKConfig](https://developer.qiniu.com/IM/api/8284/bmxsdkconfig)

getUserService

  * public static BMXUserService getUserService();
  * Returns [BMXUserService](https://developer.qiniu.com/IM/api/8292/bmxuserservice)

getChatService

  * public static BMXChatService getChatService();
  * 获取聊天Service

Returns
[BMXChatService](https://developer.qiniu.com/IM/api/8195/bmxchatservice)

getGroupService

  * public static BMXGroupService getGroupService();
  * 获取群组Service

Returns
[BMXGroupService](https://developer.qiniu.com/IM/api/8231/bmxgroupservice)

getRosterService

  * public static BMXRosterService getRosterService();
  * 获取好友Service

Returns
[BMXRosterService](https://developer.qiniu.com/IM/api/8299/bmxrosterservice)

getPushService

  * public static BMXPushService getPushService();
  * 获取推送Service

Returns
[BMXPushService](https://developer.qiniu.com/IM/api/8267/bmxpushservice)

getUserManager

  * public static BMXUserManager getUserManager();
  * 获取用户Manager

Returns
[BMXUserManager](https://developer.qiniu.com/IM/api/8287/bmxusermanager)

getChatManager

  * public static BMXChatManager getChatManager();
  * 获取聊天Manager

Returns
[BMXChatManager](https://developer.qiniu.com/IM/api/8201/bmxchatmanager)

getGroupManager

  * public static BMXGroupManager getGroupManager();
  * 获取群组Manager

Returns
[BMXGroupManager](https://developer.qiniu.com/IM/api/8230/bmxgroupmanager)

getRosterManager

  * public static BMXRosterManager getRosterManager();
  * 获取好友Manager

Returns
[BMXRosterManager](https://developer.qiniu.com/IM/api/8277/bmxrostermanager)

getPushManager

  * public static BMXPushManager getPushManager();
  * 获取推送Manager

Returns
[BMXPushManager](https://developer.qiniu.com/IM/api/8253/bmxpushmanager)

signUpNewUser

  * public static BMXErrorCode signUpNewUser(String username, String password, BMXUserProfile bmxUserProfilePtr);
  * 注册新用户，username和password是必填参数

Parameters

    * username: String 

用户名

    * password: String 

用户密码

    * bmxUserProfilePtr: [BMXUserProfile](https://developer.qiniu.com/IM/api/8304/bmxuserprofile)

注册成功后从该函数处获取新注册用户的Profile信息，初始传入指向为空的shared_ptr对象即可

Returns BMXErrorCode

signInByName

  * public static BMXErrorCode signInByName(String name, String password);
  * 通过用户名登录

Parameters

    * name: String 

用户名

    * password: String 

用户密码

Returns BMXErrorCode

signInById

  * public static BMXErrorCode signInById(long uid, String password);
  * 通过用户ID登录

Parameters

    * uid: long 

用户id

    * password: String 

用户密码

Returns BMXErrorCode

fastSignInByName

  * public static BMXErrorCode fastSignInByName(String name, String password);
  * 通过用户名快速登录（要求之前成功登录过，登录速度较快）

Parameters

    * name: String 

用户名

    * password: String 

用户密码(用于sdk在内部token到期时自动更新用户token)

Returns BMXErrorCode

fastSignInById

  * public static BMXErrorCode fastSignInById(long uid, String password);
  * 通过用户ID快速登录（要求之前成功登录过，登录速度较快）

Parameters

    * uid: long 

用户id

    * password: String 

用户密码(用于sdk在内部token到期时自动更新用户token)

Returns BMXErrorCode

signOut

  * public static BMXErrorCode signOut(long uid, boolean ignoreUnbindDevice);
  * 退出登录

Parameters

    * uid: long 

退出用户的uid（默认输入0则退出当前登陆用户）

    * ignoreUnbindDevice: boolean 

Returns BMXErrorCode

signOut

  * public static BMXErrorCode signOut(long uid);
  * 退出登录

Parameters

    * uid: long 

退出用户的uid（默认输入0则退出当前登陆用户）

Returns BMXErrorCode

signOut

  * public static BMXErrorCode signOut();
  * 退出登录

Returns BMXErrorCode

connectStatus

  * public static BMXConnectStatus connectStatus();
  * 获取当前和服务器的连接状态

Returns
[BMXConnectStatus](https://developer.qiniu.com/IM/api/8202/bmxconnectstatus)

signInStatus

  * public static BMXSignInStatus signInStatus();
  * 获取当前的登录状态

Returns
[BMXSignInStatus](https://developer.qiniu.com/IM/api/8286/bmxsigninstatus)

reconnect

  * public static void reconnect();
  * 强制重新连接

Returns void

onNetworkChanged

  * public static void onNetworkChanged(BMXNetworkType type, boolean reconnect);
  * 处理网络状态发送变化

Parameters

    * type: [BMXNetworkType](https://developer.qiniu.com/IM/api/8251/bmxnetworktype)

变化后的网络类型

    * reconnect: boolean 

网络是否需要重连

Returns void

disconnect

  * public static void disconnect();
  * 断开网络连接

Returns void

changeAppId

  * public static BMXErrorCode changeAppId(String appId, String appSecret);
  * 更改SDK的appId，本操作会同时更新BMXConfig中的appId。

Parameters

    * appId: String 

新变更的appId

    * appSecret: String 

新变更的appSecret

Returns BMXErrorCode

changeAppId

  * public static BMXErrorCode changeAppId(String appId);
  * 更改SDK的appId，本操作会同时更新BMXConfig中的appId。

Parameters

    * appId: String 

新变更的appId

Returns BMXErrorCode

initializeServerConfig

  * public static BMXErrorCode initializeServerConfig(boolean isLocal);
  * 获取app的服务器网络配置，在初始化SDK之后登陆之前调用，可以提前获取服务器配置加快登陆速度。

Parameters

    * isLocal: boolean 

\- 为true则使用本地缓存的dns配置，为false则从服务器获取最新的配置。

Returns BMXErrorCode

sendMessage

  * public static void sendMessage(BMXMessage msg);
  * 发送消息，消息状态变化会通过listener通知，在发送群组消息且指定的群组为开启群组已读回执的情况下， 该接口会自动获取群成员列表id并且填充到message config中去，无需客户端自己进行群组成员列表的填充操作。

Parameters

    * msg: [BMXMessage](https://developer.qiniu.com/IM/api/8239/bmxmessage)

消息实体

Returns void

以上内容是否对您有帮助？