HyphenateChatSDK 3.9.9.1
构造函数 | 类方法 | Protected 属性 | 属性 | 所有成员列表
EMClient类 参考

#import <EMClient.h>

类 EMClient 继承关系图:

构造函数

(NSString *) - version
 
(void) - addDelegate:delegateQueue:
 
(void) - removeDelegate:
 
(void) - addMultiDevicesDelegate:delegateQueue:
 
(void) - removeMultiDevicesDelegate:
 
(EMError *_Nullable) - initializeSDKWithOptions:
 
(EMError *_Nullable) - changeAppkey:
 
(EMError *_Nullable) - registerWithUsername:password:
 
(void) - registerWithUsername:password:completion:
 
(void) - fetchTokenWithUsername:password:completion:
 
(EMError *_Nullable) - loginWithUsername:password:
 
(void) - loginWithUsername:password:completion:
 
(EMError *_Nullable) - loginWithUsername:token:
 
(void) - loginWithUsername:token:completion:
 
(EMError *_Nullable) - loginWithUsername:agoraToken:
 
(void) - loginWithUsername:agoraToken:completion:
 
(EMError *_Nullable) - renewToken:
 
(EMError *_Nullable) - logout:
 
(void) - logout:completion:
 
(EMError *_Nullable) - bindPushKitToken:
 
(void) - registerPushKitToken:completion:
 
(EMError *_Nullable) - unBindPushKitToken
 
(void) - unRegisterPushKitTokenWithCompletion:
 
(EMError *_Nullable) - bindDeviceToken:
 
(void) - registerForRemoteNotificationsWithDeviceToken:completion:
 
(EMError *_Nullable) - uploadLogToServer
 
(void) - uploadDebugLogToServerWithCompletion:
 
(NSString *_Nullable) - getLogFilesPath:
 
(void) - getLogFilesPathWithCompletion:
 
(void) - log:
 
(void) - addLogDelegate:delegateQueue:
 
(void) - removeLogDelegate:
 
(NSArray< EMDeviceConfig * > *_Nullable) - getLoggedInDevicesFromServerWithUsername:password:error:
 
(void) - getLoggedInDevicesFromServerWithUsername:password:completion:
 
(EMError *_Nullable) - kickDeviceWithUsername:password:resource:
 
(void) - kickDeviceWithUsername:password:resource:completion:
 
(EMError *_Nullable) - kickAllDevicesWithUsername:password:
 
(void) - kickAllDevicesWithUsername:password:completion:
 
(EMDeviceConfig *) - getDeviceConfig:
 
(BOOL) - migrateDatabaseToLatestSDK
 
(void) - applicationDidEnterBackground:
 
(void) - applicationWillEnterForeground:
 
(void) - application:didReceiveRemoteNotification:
 
(void) - serviceCheckWithUsername:password:completion:
 
(id< IEMTranslateManager > _Nonnull translateManager) - EM_DEPRECATED_IOS
 

类方法

(instancetype _Nonnull) + sharedClient
 

Protected 属性

EMPushOptions_pushOptions
 

属性

NSString *_Nonnull version
 
NSString *_Nullable currentUsername
 
EMOptions *_Nonnull options
 
id< IEMChatManager > _Nullable chatManager
 
id< IEMContactManager > _Nullable contactManager
 
id< IEMGroupManager > _Nullable groupManager
 
id< IEMThreadManager > _Nullable threadManager
 
id< IEMChatroomManager > _Nullable roomManager
 
id< IEMPushManager > _Nullable pushManager
 
id< IEMCircleManager > _Nullable circleManager
 
BOOL isAutoLogin
 
BOOL isLoggedIn
 
BOOL isConnected
 
NSString *_Nullable accessUserToken
 
id< IEMUserInfoManager > _Nullable userInfoManager
 
id< IEMPresenceManager > _Nullable presenceManager
 
id< IEMStatisticsManager > _Nullable statisticsManager
 

详细描述

该类为 SDK 的入口类,负责登录登出及连接管理等,由此可以获得其他模块的入口,例如:群组模块。 [EMClient sharedClient].groupManager;

函数文档

◆ addDelegate:delegateQueue:

- (void) addDelegate: (id< EMClientDelegate >_Nonnull)  aDelegate
delegateQueue: (dispatch_queue_t _Nullable)  aQueue 

添加回调代理。

参数
aDelegate要添加的代理。
aQueue执行代理方法的队列。

◆ addLogDelegate:delegateQueue:

- (void) addLogDelegate: (id< EMLogDelegate >_Nonnull)  aDelegate
delegateQueue: (addLog(delegate:queue:))  NS_SWIFT_NAME 

添加日志回调代理。

参数
aDelegate要添加的代理。
aQueue执行代理方法的队列。

◆ addMultiDevicesDelegate:delegateQueue:

- (void) addMultiDevicesDelegate: (id< EMMultiDevicesDelegate >_Nonnull)  aDelegate
delegateQueue: (addMultiDevices(delegate:queue:))  NS_SWIFT_NAME 

添加多设备回调代理。

参数
aDelegate要添加的代理。
aQueue执行代理方法的队列。

◆ application:didReceiveRemoteNotification:

- (void) application: (id _Nonnull)  application
didReceiveRemoteNotification: (NSDictionary *_Nullable)  userInfo 

iOS 专用,程序在前台收到 APNS 时,需要调用此方法。

参数
application当前应用程序实例。
userInfo推送内容。

◆ applicationDidEnterBackground:

- (void) applicationDidEnterBackground: (id _Nonnull)  aApplication

iOS 专用,程序进入后台时,需要调用此方法断开连接。

参数
aApplicationUIApplication

◆ applicationWillEnterForeground:

- (void) applicationWillEnterForeground: (id _Nonnull)  aApplication

iOS 专用,程序进入前台时,需要调用此方法进行重连。

参数
aApplication当前应用程序实例。

◆ bindDeviceToken:

- (EMError *_Nullable) bindDeviceToken: (NSData *_Nonnull)  aDeviceToken

绑定 device token。

Device token 用于苹果 APNS 推送。

同步方法,会阻塞当前线程。

参数
aDeviceToken要绑定的 token。
返回
EMError 错误信息,包含调用失败的原因。

◆ bindPushKitToken:

- (EMError *_Nullable) bindPushKitToken: (NSData *_Nullable)  aPushToken

绑定 PushKit token。

这里是苹果的 PushKit 推送服务,服务于 VOIP 类型的推送。

同步方法,会阻塞当前线程。

参数
aPushToken要绑定的 token。
返回
EMError 错误信息,包含调用失败的原因。

◆ changeAppkey:

- (EMError *_Nullable) changeAppkey: (NSString *_Nonnull)  aAppkey

修改 app key,注意只有在未登录状态才能修改 app key。修改 app key 是为了方便你切换其他 app key,切换后可以使用切换后的 app key 测试,除了登出外,没有其他的限制。

参数
aAppkeyThe app key.
返回
EMError 错误信息,包含调用失败的原因。

◆ fetchTokenWithUsername:password:completion:

- (void) fetchTokenWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(NSString *_Nullable aToken, EMError *_Nullable aError))  aCompletionBlock 

从服务器获取 token。

异步方法。

参数
aUsername用户名。
aPassword密码。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getDeviceConfig:

- (EMDeviceConfig *) getDeviceConfig: (EMError **)  pError

获取当前登录的设备信息

返回
EMDeviceConfig 当前登录的设备信息

◆ getLogFilesPath:

- (NSString *_Nullable) getLogFilesPath: (EMError **_Nullable)  pError

将日志文件压缩成 .gz 文件,返回 gz 文件路径。强烈建议方法完成之后删除该压缩文件。

同步方法,会阻塞当前线程。

参数
pError错误信息,包含调用失败的原因。
返回
NSString 文件路径。

◆ getLogFilesPathWithCompletion:

- (void) getLogFilesPathWithCompletion: (void(^)(NSString *_Nullable aPath, EMError *_Nullable aError))  aCompletionBlock

将日志文件压缩成 .gz 文件,返回 gz 文件路径。强烈建议方法完成之后删除该压缩文件。

异步方法。

参数
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getLoggedInDevicesFromServerWithUsername:password:completion:

- (void) getLoggedInDevicesFromServerWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(NSArray< EMDeviceConfig * > *_Nullable aList, EMError *_Nullable aError))  aCompletionBlock 

从服务器获取所有已经登录的设备信息。

异步方法。

参数
aUsername用户名。
aPassword密码。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getLoggedInDevicesFromServerWithUsername:password:error:

- (NSArray< EMDeviceConfig * > *_Nullable) getLoggedInDevicesFromServerWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
error: (EMError **_Nullable)  pError 

从服务器获取所有已经登录的设备信息。

同步方法,会阻塞当前线程。

参数
aUsername用户名。
aPassword密码。
pError错误信息,包含调用失败的原因。
返回
所有已经登录的设备信息列表,由 <EMDeviceConfig> 对象组成的数组。

◆ initializeSDKWithOptions:

- (EMError *_Nullable) initializeSDKWithOptions: (EMOptions *_Nonnull)  aOptions

初始化 SDK。

参数
aOptionsSDK 配置项。
返回
EMError 错误信息,包含调用失败的原因。

◆ kickAllDevicesWithUsername:password:

- (EMError *_Nullable) kickAllDevicesWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword 

强制所有的登录设备登出。

同步方法,会阻塞当前线程。

参数
aUsername用户名。
aPassword密码。
返回
返回结果,如果失败会包含调用失败的原因。

◆ kickAllDevicesWithUsername:password:completion:

- (void) kickAllDevicesWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(EMError *_Nullable aError))  aCompletionBlock 

强制所有的登录设备登出。

异步方法。

参数
aUsername用户名。
aPassword密码。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ kickDeviceWithUsername:password:resource:

- (EMError *_Nullable) kickDeviceWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
resource: (NSString *_Nonnull)  aResource 

强制指定的设备登出。

同步方法,会阻塞当前线程。

参数
aUsername用户名。
aPassword密码。
aResource要登出的设备,可以通过 getLoggedInDevicesFromServerWithUsername 方法获取。
返回
返回方法调用结果,如果有错误会返回错误原因。

◆ kickDeviceWithUsername:password:resource:completion:

- (void) kickDeviceWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
resource: (NSString *_Nonnull)  aResource
completion: (void(^)(EMError *_Nullable aError))  aCompletionBlock 

强制指定的设备登出。

异步方法。

参数
aUsername用户名。
aPassword密码。
aResource设备信息。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ log:

- (void) log: (NSString *_Nonnull)  aLog

输出日志信息到日志文件,需要在 SDK 初始化之后调用。

同步方法,会阻塞当前线程。

参数
aLog要输出的日志信息。

◆ loginWithUsername:agoraToken:

- (EMError *_Nullable) loginWithUsername: (NSString *_Nonnull)  aUsername
agoraToken: (NSString *_Nonnull)  aAgoraToken 

声网 Agora Chat user token 登录。

同步方法,会阻塞当前线程。

参数
aUsername用户名
aAgoraToken声网 Agora Chat user token。
返回
成功返回 nil,如果有错误会返回错误原因。

◆ loginWithUsername:agoraToken:completion:

- (void) loginWithUsername: (NSString *_Nonnull)  aUsername
agoraToken: (NSString *_Nonnull)  aAgoraToken
completion: (void(^)(NSString *_Nonnull aUsername, EMError *_Nullable aError))  aCompletionBlock 

声网 Agora Chat user token 登录。

参数
aUsername用户名。
aAgoraToken声网 Agora Chat user token。
aCompletionBlock完成的回调,如果有错误会返回错误原因。

◆ loginWithUsername:password:

- (EMError *_Nullable) loginWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword 

用户使用密码登录服务器。

推荐使用token登录聊天服务器

同步方法,会阻塞当前线程。

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aPassword密码,长度不超过 64 个字符。请确保你对该参数设值。
返回
EMError 错误信息,包含调用失败的原因。

◆ loginWithUsername:password:completion:

- (void) loginWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(NSString *_Nonnull aUsername, EMError *_Nullable aError))  aCompletionBlock 

用户使用密码登录聊天服务器。

异步方法。

推荐使用token登录聊天服务器

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aPassword密码,长度不超过 64 个字符。请确保你对该参数设值。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ loginWithUsername:token:

- (EMError *_Nullable) loginWithUsername: (NSString *_Nonnull)  aUsername
token: (NSString *_Nonnull)  aToken 

用户使用 token 登录。该方法支持自动登录。

同步方法,会阻塞当前线程。

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aTokenThe token。
返回
EMError 错误信息,包含调用失败的原因。

◆ loginWithUsername:token:completion:

- (void) loginWithUsername: (NSString *_Nonnull)  aUsername
token: (NSString *_Nonnull)  aToken
completion: (void(^)(NSString *_Nonnull aUsername, EMError *_Nullable aError))  aCompletionBlock 

用户使用 token 登录。该方法支持自动登录。

异步方法。

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aTokenThe token。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ logout:

- (EMError *_Nullable) logout: (BOOL)  aIsUnbindDeviceToken

用户登出聊天服务器。

同步方法,会阻塞当前线程。

参数
aIsUnbindDeviceToken是否解除账号与设备绑定。YES 表示解除绑定。成功解绑后,用户登出账号后设备将不再收到消息推送。如果你将该参数设为 YES,但解绑失败,则 SDK 会返回错误信息,包含调用失败的原因。
返回
EMError 错误信息,包含失败原因。

◆ logout:completion:

- (void) logout: (BOOL)  aIsUnbindDeviceToken
completion: (void(^)(EMError *_Nullable aError))  aCompletionBlock 

登出聊天服务器。

异步方法。

参数
aIsUnbindDeviceToken是否解除账号与设备绑定。YES 表示解除绑定。成功解绑后,用户登出账号后设备将不再收到消息推送。如果你将该参数设为 YES,但解绑失败,则 SDK 会返回错误信息,包含调用失败的原因。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ migrateDatabaseToLatestSDK

- (BOOL) migrateDatabaseToLatestSDK

iOS 专用,数据迁移到 SDK3.0。

同步方法,会阻塞当前线程。

升级到 SDK3.0 版本需要调用该方法,开发者需要等该方法执行完后再进行数据库相关操作。

返回
BOOL 是否迁移成功。

◆ registerForRemoteNotificationsWithDeviceToken:completion:

- (void) registerForRemoteNotificationsWithDeviceToken: (NSData *_Nonnull)  aDeviceToken
completion: (void(^)(EMError *_Nullable aError))  aCompletionBlock 

注册 device token。

Device token 用于苹果 APNS 推送。

异步方法。

参数
aDeviceToken要绑定的 token。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ registerPushKitToken:completion:

- (void) registerPushKitToken: (NSData *_Nullable)  aPushToken
completion: (void(^)(EMError *_Nullable aError))  aCompletionBlock 

注册 PushKit token。

这里是苹果的 PushKit 推送服务,服务于 VOIP 类型的推送。

异步方法。

参数
aPushToken要绑定的 token。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ registerWithUsername:password:

- (EMError *_Nullable) registerWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword 

注册用户。不推荐使用,建议后台通过 REST 注册。

同步方法,会阻塞当前线程.

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aPassword密码,长度不超过 64 个字符。请确保你对该参数设值。
返回
EMError 错误信息,包含调用失败的原因。

◆ registerWithUsername:password:completion:

- (void) registerWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(NSString *_Nonnull aUsername, EMError *_Nullable aError))  aCompletionBlock 

注册用户。

不推荐使用,建议后台通过 REST 注册。

异步方法。

参数
aUsername用户名,长度不超过 64 个字符。请确保你对该参数设值。支持的字符包括英文字母(a-z),数字(0-9),下划线(_),英文横线(-),英文句号(.)。该参数不区分大小写,大写字母会被自动转为小写字母。如果使用正则表达式设置该参数,则可以将表达式写为:^[a-zA-Z0-9_-]+$。
aPassword密码,长度不超过 64 个字符。请确保你对该参数设值。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ removeDelegate:

- (void) removeDelegate: (id _Nonnull)  aDelegate

移除回调代理。

参数
aDelegate要移除的代理。

◆ removeLogDelegate:

- (void) removeLogDelegate: (removeLog(delegate:))  NS_SWIFT_NAME

移除日志回调代理。

参数
aDelegate要移除的代理。

◆ removeMultiDevicesDelegate:

- (void) removeMultiDevicesDelegate: (id< EMMultiDevicesDelegate >_Nonnull)  aDelegate

移除多设备回调代理。

参数
aDelegate要移除的代理。

◆ renewToken:

- (EMError *_Nullable) renewToken: (NSString *_Nonnull)  newAgoraToken

当用户在声网 token 登录状态时,且在 EMClientDelegate 回调中收到 token 即将过期/已经过期事件的回调通知,可以调用这个 API 来更新 token,避免因 token 失效产生的未知问题。

同步方法,会阻塞当前线程。

参数
newAgoraToken新声网 token。
返回
返回结果,如果有错误会返回错误信息。

◆ serviceCheckWithUsername:password:completion:

- (void) serviceCheckWithUsername: (NSString *_Nonnull)  aUsername
password: (NSString *_Nonnull)  aPassword
completion: (void(^)(EMServerCheckType aType, EMError *_Nullable aError))  aCompletionBlock 

服务诊断接口,根据 EMServerCheckType 枚举的顺序依次诊断当前服务,并回调给开发者。 如果已经登录,默认使用登录账号。

异步方法。

参数
aUsername用户名。
aPassword密码。
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ sharedClient

+ (instancetype _Nonnull) sharedClient

Client 类是 chat 的入口,在调用任何其他方法前,需要先调用该方法创建一个 Client 实例。

◆ unBindPushKitToken

- (EMError *_Nullable) unBindPushKitToken

解除 PushKit token 绑定,与解除注册 unRegisterPushKitTokenWithCompletion 方法作用一致。

这里是苹果的 PushKit 推送服务,服务于 VOIP 类型的推送。

同步方法,会阻塞当前线程。

返回
EMError 错误信息,包含调用失败的原因。

◆ unRegisterPushKitTokenWithCompletion:

- (void) unRegisterPushKitTokenWithCompletion: (void(^)(EMError *_Nullable aError))  aCompletionBlock

解除 PushKit token 注册,与解除绑定 unBindPushKitToken 方法作用一致。

异步方法。

这里是苹果的 PushKit 推送服务,服务于 VOIP 类型的推送。

◆ uploadDebugLogToServerWithCompletion:

- (void) uploadDebugLogToServerWithCompletion: (void(^)(EMError *_Nullable aError))  aCompletionBlock

上传日志到服务器。

参数
aCompletionBlock该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ uploadLogToServer

- (EMError *_Nullable) uploadLogToServer

上传日志到服务器。

同步方法,会阻塞当前线程。

返回
成功返回 nil,调用失败返回 error 其中包含调用失败的原因。

◆ version

- (NSString *) version

SDK 版本号。

属性说明

◆ accessUserToken

- (NSString* _Nullable) accessUserToken
readnonatomicassign

当前用户访问聊天服务器使用的 token。用户第一次登陆的时候需要用用户 ID 和密码登陆,成功时返回 token,以后即可用 token 登陆。

◆ chatManager

- (id<IEMChatManager> _Nullable) chatManager
readnonatomicstrong

聊天模块。

◆ circleManager

- (id<IEMCircleManager> _Nullable) circleManager
readnonatomicstrong

circle模块。

◆ contactManager

- (id<IEMContactManager> _Nullable) contactManager
readnonatomicstrong

好友模块。

◆ currentUsername

- (NSString* _Nullable) currentUsername
readnonatomicstrong

当前登录账号。

◆ groupManager

- (id<IEMGroupManager> _Nullable) groupManager
readnonatomicstrong

群组模块。

◆ isAutoLogin

- (BOOL) isAutoLogin
readnonatomicassign

是否让用户自动使用上次登录的账号登录。如果因密码错误或账号异常等原因登录失败,则该参数会被重置为 NO;如果你想使用自动登录,则需要重新将该参数设为 YES。

◆ isConnected

- (BOOL) isConnected
readnonatomicassign

SDK 是否连上聊天服务器。

◆ isLoggedIn

- (BOOL) isLoggedIn
readnonatomicassign

用户是否已登录。

◆ options

- (EMOptions* _Nonnull) options
readnonatomicstrong

SDK 的设置选项。

◆ presenceManager

- (id<IEMPresenceManager> _Nullable) presenceManager
readnonatomicstrong

在线状态管理模块。

◆ pushManager

- (id<IEMPushManager> _Nullable) pushManager
readnonatomicstrong

推送模块。

◆ roomManager

- (id<IEMChatroomManager> _Nullable) roomManager
readnonatomicstrong

聊天室模块

◆ statisticsManager

- (id<IEMStatisticsManager> _Nullable) statisticsManager
readnonatomicstrong

消息流量管理模块。

◆ threadManager

- (id<IEMThreadManager> _Nullable) threadManager
readnonatomicstrong

聊天室模块。 thread模块

◆ userInfoManager

- (id<IEMUserInfoManager> _Nullable) userInfoManager
readnonatomicstrong

用户属性模块。

◆ version

- (NSString* _Nonnull) version
readnonatomicstrong

SDK 版本号。


该类的文档由以下文件生成: