Android Asmack登录

使用的是AsyncTask,可以把login放到里面。

因为这是我自己的项目代码,所以我尽量不发太多耦合性很强的代码



private Integer login(){ String name = Util.readPre(context, app.getLoginname(), GoLoveApp.USERNAME, ""); String pwd = Util.readPre(context, app.getLoginname(), GoLoveApp.PASSWORD, ""); try { XMPPConnection connection = XmppConnectionManager.getInstance().getConnection(); connection.connect(); connection.login(name, Util.MD5(pwd)); //处理离线消息 OfflineMsgManager.getInstance(context).getOfflineMsg(connection); connection.sendPacket(new Presence(Presence.Type.available)); return GoLoveApp.LOGIN_SECCESS; } catch (Exception e) { if(e instanceof XMPPException){ XMPPException xe = (XMPPException) e; final XMPPError error = xe.getXMPPError(); int errorCode = 0; if(error!=null){ errorCode = error.getCode(); } if(errorCode==401 || errorCode==403){ return GoLoveApp.LOGIN_ERROR_ACCOUNT_PASS; }else{ return GoLoveApp.SERVER_UNAVAILABLE; } }else{ return GoLoveApp.LOGIN_ERROR; } } }

 

posted on 2015-07-28 10:04  _此名没人用  阅读(236)  评论(0编辑  收藏  举报

导航