openfire Android学习---android客户端聊天开发之登录 和 注销登录

it2022-05-05  128

一切就绪,新建一个android测试工程:

上网权限配置,界面绘制啥的,这里就不说了。

首先 导入一个smark包。这个是用来维护长连接的,也可以是asmark。我用的是asmark

先普及一些基本知识:

在xmpp中,所有东西的传输都是通过一个XMPPConnection的对象来进行传输的。 它给一个xml头,当服务器收到xml尾的时候,认为一次连接结束了

既然这样的话我们第一步就是拿到这个连接

/** * 连接服务器 * * @return */ public boolean conServer() { ConnectionConfiguration config = new ConnectionConfiguration("192.168.2.115", 5222); /** 是否启用安全验证 */ config.setSASLAuthenticationEnabled(false); /** 是否启用调试 */ // config.setDebuggerEnabled(true); /** 创建connection链接 */ try { connection = new XMPPConnection(config); /** 建立连接 */ connection.connect(); return true; } catch (XMPPException e) { e.printStackTrace(); } return false; }

这个方法就不详细说了,拿进去肯定就可以用了connection 就是 XMPPConnection。建议定义为全局的,或者static的,因为我们一直要使用

成功拿到了连接之后就可以进行登录操作了

/** * 登录 * * @param a 登录帐号 * @param p 登录密码 * @return */ public boolean login(String a, String p) { try { if (connection == null) return false; /** 登录 */ connection.login(a, p); return true; } catch (Exception e) { e.printStackTrace(); } return false; }

调用方法时候记得填对用户名和密码

调用完登录方法后,去服务器看一下吧

成功登录后刷新一下用户组页面,可以看到,你的那个用户状态处于登录状态了哦

接下来看一下注销登录:

直接退出  程序   connection销毁了,其实就已经注销了,但是我们作为程序员不能这么干,哈哈

   

/** * 注销当前用户登录 * @param connection * @return */ public static boolean deleteAccount(XMPPConnection connection) { try { connection.getAccountManager().deleteAccount(); return true; } catch (Exception e) { return false; } }

用一个按钮去调这个方法就OK啦

试一下吧,今儿就到这了,

下一个说说聊天功能的开发

转载于:https://www.cnblogs.com/jasonkent27/p/4098443.html

相关资源:各显卡算力对照表!

最新回复(0)