EMClient class

该类是 Chat SDK 的入口,负责登录、退出及连接管理等,由此可以获得其他模块的入口。

Properties

chatManager EMChatManager
获取 EMChatManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
chatRoomManager EMChatRoomManager
获取 EMChatRoomManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
chatThreadManager EMChatThreadManager
获取 EMChatThreadManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
contactManager EMContactManager
获取 EMContactManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
currentUserId String?
当前登录用户 ID.
read-only
customEventHandler ↔ (void Function(Map map)?)
设置一个自定义事件句柄来接收来自 iOS 或 Android 设备的数据。
read / write
groupManager EMGroupManager
获取 EMGroupManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
hashCode int
The hash code for this object.
read-onlyinherited
options EMOptions?
获取配置信息。
read-only
presenceManager EMPresenceManager
获取 EMPresenceManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
pushManager EMPushManager
获取 EMPushManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
userInfoManager EMUserInfoManager
获取 EMUserInfoManager 类。请确保在 EMClient 初始化之后调用本方法,详见 EMClient.init
read-only

Methods

addConnectionEventHandler(String identifier, EMConnectionEventHandler handler) → void
添加连接状态监听事件。
addMultiDeviceEventHandler(String identifier, EMMultiDeviceEventHandler handler) → void
添加多设备事件监听。
changeAppKey({required String newAppKey}) Future<bool>
修改 App Key。
clearConnectionEventHandles() → void
清除所以连接状态监听。
clearMultiDeviceEventHandles() → void
清除所有多设备事件监听。
compressLogs() Future<String>
压缩 log 文件,并返回压缩后的文件路径。强烈建议方法完成之后删除该压缩文件。
createAccount(String userId, String password) Future<void>
创建账号。
fetchLoggedInDevices({required String userId, required String pwdOrToken, bool isPwd = true}) Future<List<EMDeviceInfo>>
获取指定账号下登录的在线设备列表。
getAccessToken() Future<String>
获取当前登录账号的 Token。
getConnectionEventHandler(String identifier) EMConnectionEventHandler?
获取连接状态监听事件。
getCurrentUserId() Future<String?>
获取当前登录的用户 ID。
getLoggedInDevicesFromServer({required String userId, required String password}) Future<List<EMDeviceInfo>>
获取指定账号下登录的在线设备列表。
getMultiDeviceEventHandler(String identifier) EMMultiDeviceEventHandler?
获取多设备事件监听。
init(EMOptions options) Future<void>
初始化 SDK。
isConnected() Future<bool>
检查 SDK 是否连接到 Chat 服务器。 Return SDK 是否连接到 Chat 服务器。
isLoginBefore() Future<bool>
检查用户是否已登录 Chat 服务。
kickAllDevices({required String userId, required String pwdOrToken, bool isPwd = true}) Future<void>
将指定账号登录的所有设备都踢下线。
kickDevice({required String userId, required String pwdOrToken, required String resource, bool isPwd = true}) Future<void>
将指定账号登录的指定设备踢下线。
login(String userId, String pwdOrToken, [bool isPassword = true]) Future<void>
使用密码或 Token 登录服务器。
loginWithAgoraToken(String userId, String agoraToken) Future<void>
用声网 Token 登录服务器,该方法支持自动登录。
loginWithPassword(String userId, String password) Future<void>
用户使用密码登录聊天服务器。
loginWithToken(String userId, String token) Future<void>
用户使用 token 登录。
logout([bool unbindDeviceToken = true]) Future<void>
退出登录。
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
removeConnectionEventHandler(String identifier) → void
移除连接状态监听事件。
removeMultiDeviceEventHandler(String identifier) → void
移除多设备事件监听。
renewAgoraToken(String agoraToken) Future<void>
当用户在声网 token 登录状态时,且在 EMConnectionEventHandler.onTokenWillExpire 实现类中收到 token 即将过期事件的回调通知可以调用这个 API 来更新 token,避免因 token 失效产生的未知问题。
startCallback() Future<void>
/// 开始回调通知。
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

getInstance EMClient
获取 SDK 实例。
read-only