Android SDK 基础功能
初始化 SDK
要求在 application 的oncreate
方法中做初始化,初始化的时候需要传入应用的AppID、包名、cpu能力。
UserAgentProxy proxy = UserAgentProxy.getInstance(); proxy.init("2.0.0" /*apiVersion*/, "chatgame-3.0" /*clientVersion*/, 5 /*cpuCapability*/, packageName); proxy.setAppID(12345); // 设置应用的AppID //获取登录、呼叫、消息 service ConnectService connectService = proxy.getConnectService(); CallService callService = proxy.getCallService(); MessageService messageService = proxy.getMessageService();
注册连接、消息、呼叫处理接口:
connectService.setConnectListener(connectListener); callService.setCallListener(callListener); messageService.setMessageListener(messageListener);
相关模块的服务类:
- ConnectService 处理连接相关的服务类
- CallService 处理呼叫相关的服务类
- MessageService 处理消息相关的服务类
相关Listener:
- ConnectListener 处理连接相关的回调
- CallListener 处理呼叫相关的回调
- MessageListener 处理消息相关的回调
注册listener多次调用只有最后一次设置有效,建议不要多次调用。
帐号注册
帐号注册由 APP 自己处理,注册帐号时 APP 服务端调用露脸云的接口创建用户对应的露脸云帐号,创建成功后会获取到露脸 UserID 和对应的 SessionID,这两个值需要返回给客户端,客户端以下接口中提到的 userID、peerUserID 及指露脸 UserID,SessionID及对应返回的 SessionID。
登录
使用sessionid和username登录
public class ConnectService { /** * 登录消息处理服务器 * @param userID 用户ID * @param sessionID 用户的 sessionID * @param hostname 登录服务器信息, 通过服务端接口 /api/server/addr 获取, 内容为json数据格式 * @param language 指定手机端语言类型, 服务端推送等相关信息将会使用此语言类型 * @param regionCode 登录服务器的区号, 中国区 0086, 其他区 0001 * @return true 表示调用成功 */ public boolean loginToMessageServer(String userID, String sessionID, String hostname, String language, String regionCode){} }
hostname 通过客户端 RSET 接口 /api/server/addr 获取, 把返回的 tcp_server 数据换为为String格式:
[\"192.168.1.232:7000\",\"192.168.1.233:7000\"]
退出登录
程序退出时调用
public class ConnectService { /** * 从消息服务器登出 * @return true 表示调用成功 */ public boolean logoutFromMessageServer(); }