hyphenate_SDK4.0 4.2.3-lite
hyphenate java IM SDK
|
Public 成员函数 | |
void | init (Context context, EMOptions options) |
void | createAccount (String username, String password) throws HyphenateException |
void | login (String id, String password, @NonNull final EMCallBack callback) |
void | loginWithToken (String username, String token, @NonNull final EMCallBack callback) |
void | notifyTokenExpired (String response) |
void | renewToken (String newToken, @NonNull EMCallBack callback) |
int | logout (boolean unbindToken) |
void | logout (final boolean unbindToken, final EMCallBack callback) |
void | addConnectionListener (final EMConnectionListener listener) |
void | removeConnectionListener (final EMConnectionListener listener) |
void | addLogListener (final EMLogListener listener) |
void | removeLogListener (final EMLogListener listener) |
EMChatRoomManager | chatroomManager () |
EMChatManager | chatManager () |
Context | getContext () |
synchronized String | getCurrentUser () |
boolean | isLoggedInBefore () |
boolean | isConnected () |
boolean | isLoggedIn () |
void | setDebugMode (boolean debugMode) |
void | uploadLog (EMCallBack callback) |
EMOptions | getOptions () |
String | compressLogs () throws HyphenateException |
String | getAccessToken () |
boolean | isSdkInited () |
Chat 客户端类。该类是 Chat SDK 的入口,负责登录、登出及管理 SDK 与 chat 服务器之间的连接。
void com.hyphenate.chat.EMClient.addConnectionListener | ( | final EMConnectionListener | listener | ) |
设置连接状态监听器。
该监听器用于监听 Chat app 与 Chat 服务器之间的连接。
listener | 要添加的连接状态监听器。
|
void com.hyphenate.chat.EMClient.addLogListener | ( | final EMLogListener | listener | ) |
设置日志回调监听器。
listener | 日志回调监听,EMLogListener#onLog(String)。 |
EMChatManager com.hyphenate.chat.EMClient.chatManager | ( | ) |
EMChatRoomManager com.hyphenate.chat.EMClient.chatroomManager | ( | ) |
获取群组管理类。
该方法需在 EMClient 初始化完成后调用,详见 init(Context, EMOptions)。
获取推送管理类。
该方法需在 EMClient 初始化完成后调用。详见 init(Context, EMOptions)。
获取聊天室管理类。
该方法需要在 EMClient 初始化完成后调用,详见 init(Context, EMOptions)。
String com.hyphenate.chat.EMClient.compressLogs | ( | ) | throws HyphenateException |
压缩调试日志文件。
强烈建议方法完成之后删除该压缩文件。
HyphenateException | 压缩文件失败报的错。 |
void com.hyphenate.chat.EMClient.createAccount | ( | String | username, |
String | password | ||
) | throws HyphenateException |
创建账号。
该方法不推荐使用,建议调用相应的 RESTful 方法。
同步方法,会阻塞当前线程。
username | 用户 ID。 该参数必填。用户 ID 不能超过 64 个字符,支持以下类型的字符:
|
用户 ID 不区分大小写,大写字母会自动转换为小写字母。
用户的电子邮件地址和 UUID 不能作为用户 ID。
可通过以下格式的正则表达式设置用户 ID:^[a-zA-Z0-9_-]+$。
password | 密码,长度不超过 64 个字符,必填。 |
HyphenateException | 如果该方法调用失败,会包含调用失败的原因。例如 username(账号),(password)密码为空,或者账号不符合要求。 |
String com.hyphenate.chat.EMClient.getAccessToken | ( | ) |
从内存中获取身份认证 token。
在上传下载附件(语音,图片,文件等)时必须将 token 添加到请求 header 中,当出现任何异常时将返回 null
。
如果为 null
,在打开 EMLog 日志时,可以看到异常原因。
也可以通过 EMOptions#getAccessToken(boolean) 方法传入 true
从服务端获取 token。
Context com.hyphenate.chat.EMClient.getContext | ( | ) |
获取用户信息管理类。
需要在 EMClient 初始化完成后调用,详见 init(Context, EMOptions)。
获取联系人管理类。
需要在 EMClient 初始化完成后调用,详见 init(Context, EMOptions)。
synchronized String com.hyphenate.chat.EMClient.getCurrentUser | ( | ) |
获取当前登录用户的用户名。
EMOptions com.hyphenate.chat.EMClient.getOptions | ( | ) |
获取 SDK 的各种配置选项。
void com.hyphenate.chat.EMClient.init | ( | Context | context, |
EMOptions | options | ||
) |
boolean com.hyphenate.chat.EMClient.isConnected | ( | ) |
检查 SDK 是否连接到 Chat 服务器。
true
表示已经连接到 Chat 服务器。false
表示没有连接到 Chat 服务器。 boolean com.hyphenate.chat.EMClient.isLoggedIn | ( | ) |
检查用户是否登录 Chat 服务。
true
:是。false
:否。 boolean com.hyphenate.chat.EMClient.isLoggedInBefore | ( | ) |
查询是否登录过。
如果登录成功后未调用 logout
方法,这个方法的返回值一直是 true
。
如果需要判断当前是否连接到服务器,请使用 isConnected() 方法。
true
表示登录过。false
表示未登录过或者已经调用过 logout() 方法。 boolean com.hyphenate.chat.EMClient.isSdkInited | ( | ) |
检查 SDK 是否已初始化完毕。
true
:是。false
:否。 void com.hyphenate.chat.EMClient.login | ( | String | id, |
String | password, | ||
@NonNull final EMCallBack | callback | ||
) |
使用密码登录服务器。
通过 token 登录服务器的方法见 loginWithToken(String, String, EMCallBack)。
异步方法。
id | 用户 ID,必填。 |
password | 用户密码,必填。 |
callback | 登录回调,必填。登录的结果将通过回调返回。 |
void com.hyphenate.chat.EMClient.loginWithToken | ( | String | username, |
String | token, | ||
@NonNull final EMCallBack | callback | ||
) |
通过 token 登录服务器。
该方法支持自动登录。
通过密码登录服务器,见 login(String, String, EMCallBack)。
异步方法。
username | 用户 ID,必填。 |
token | 验证 token,必填。 |
callback | 登录回调,返回登录结果。必填且不能为 null 。登录的结果将通过 callback 返回。 |
int com.hyphenate.chat.EMClient.logout | ( | boolean | unbindToken | ) |
退出登录。
同步方法,会阻塞当前线程。
unbindToken | 登出时是否解绑 token。
|
void com.hyphenate.chat.EMClient.logout | ( | final boolean | unbindToken, |
final EMCallBack | callback | ||
) |
登出聊天服务器。
异步方法。
unbindToken | 是否解绑 token。
|
callback | 方法完成的回调,包含调用失败的原因。 |
void com.hyphenate.chat.EMClient.notifyTokenExpired | ( | String | response | ) |
通知 token 过期。
SDK 将token 过期事件回调给 connectionListener。如果用户注册了 connectionListener,则会收到 token 过期事件。
response | 请求返回的结果。 |
void com.hyphenate.chat.EMClient.removeConnectionListener | ( | final EMConnectionListener | listener | ) |
移除 Chat 服务器连接监听。
listener | 要移除的 Chat 服务器连接监听。 |
void com.hyphenate.chat.EMClient.removeLogListener | ( | final EMLogListener | listener | ) |
移除日志回调监听。
listener | 日志回调监听。 |
void com.hyphenate.chat.EMClient.renewToken | ( | String | newToken, |
@NonNull EMCallBack | callback | ||
) |
更新 token。
当用户利用 token 登录的情况下在 EMConnectionListener 类中收到 token 即将过期事件的回调通知时,可调用该方法更新 token,避免因 token 失效产生的未知问题。
newToken | 新token。 |
callback | EMCallback 回调函数,不能为空,更新token的结果将通过callback返回 |
void com.hyphenate.chat.EMClient.setDebugMode | ( | boolean | debugMode | ) |
设置是否输出调试信息。
在 EMClient 初始化完成后调用,详见 init(Context, EMOptions)。
debugMode | 是否输出调试信息。
|
void com.hyphenate.chat.EMClient.uploadLog | ( | EMCallBack | callback | ) |
上传本地日志。
同步方法,会阻塞当前线程。
callback | 预留参数。 |