【发布时间】:2016-08-10 14:40:11
【问题描述】:
谁能解释我如何创建一个帐户并登录它(我说的是在 Openfire 中创建帐户)?我们需要登录某人的帐户,然后创建一个新帐户,但是如何登录该新帐户?我不知道该怎么做。请帮帮我!!!
这是我的代码:
connection.login(Usrname, Password);
AccountManager accountManager = AccountManager.getInstance(connection);
//Log.e(tag, String.valueOf(accountManager.supportsAccountCreation()));
accountManager.createAccount(Usrname1, Password1);
//How to log into created account here?
附:在设置-1之前告诉我我的问题有什么问题
谢谢。
编辑 我的代码
public void connectionInitialization(){
new connect().execute();
}
public class connect extends AsyncTask<Void,Void,Void>{
@Override
protected Void doInBackground(Void... voids) {
try {
XMPPTCPConnectionConfiguration.Builder connectionConfiguration = XMPPTCPConnectionConfiguration.builder();
//connectionConfiguration.setUsernameAndPassword(, "12345678");
connectionConfiguration.setHost("192.168.2.106");
connectionConfiguration.setServiceName("192.168.2.106");
connectionConfiguration.setConnectTimeout(12000);
connectionConfiguration.setSecurityMode(XMPPTCPConnectionConfiguration.SecurityMode.disabled);
connectionConfiguration.setPort(5222);
connectionConfiguration.setResource("test");
connectionConfiguration.setDebuggerEnabled(true);
connection = new XMPPTCPConnection(connectionConfiguration.build());
XMPPTCPConnectionListener xmpptcpConnectionListener = new XMPPTCPConnectionListener();
connection.addConnectionListener(xmpptcpConnectionListener);
Log.e(tag, "connecting started");
connection.connect();
AccountManager.getInstance(connection).sensitiveOperationOverInsecureConnection(true);
Map<String,String> attributes = new HashMap<String, String>(2);
attributes.put("name", "Donald Duck");
attributes.put("email", "foo@bar.fb");
AccountManager.getInstance(connection).createAccount("kagyn", "12345678", attributes);
AccountManager.getInstance(connection).sensitiveOperationOverInsecureConnection(false);
Log.e(tag, "Success");
}catch (XMPPException e){
Log.e(tag,"Connect_XMPPException " + e.getMessage());
}catch (SmackException | IOException e){
Log.e(tag, "Connect_SmackOrIOException " + e.getMessage());
}
return null;
}
}
public class XMPPTCPConnectionListener implements ConnectionListener{
@Override
public void connected(XMPPConnection connection1) {
Log.e(tag,"connected");
}
@Override
public void authenticated(XMPPConnection connection, boolean resumed) {
Log.e(tag,"authenticated");
}
@Override
public void connectionClosed() {
Log.e(tag,"connectionClosed");
}
@Override
public void connectionClosedOnError(Exception e) {
Log.e(tag,"connectionClosedOnError " + e.getMessage());
}
@Override
public void reconnectionSuccessful() {
Log.e(tag, "reconnectionSuccessful");
}
@Override
public void reconnectingIn(int seconds) {
Log.e(tag,"reconnectingIn");
}
@Override
public void reconnectionFailed(Exception e) {
Log.e(tag, "reconnectionFailed " + e.getMessage());
}
}
【问题讨论】:
标签: android xmpp openfire smack