如何从Smack 4.1创建帐户

时间:2015-01-29 17:40:24

标签: android xmpp smack

我试图在jabber.at上使用Smack for Android创建一个帐户。 这是我的代码:

XMPPTCPConnectionConfiguration conf= XMPPTCPConnectionConfiguration.builder()
                                .setServiceName("jabber.at")
                                .build();
XMPPTCPConnection connection = new XMPPTCPConnection(conf);

connection.addConnectionListener(xmppConnectionListener);
connection.connect();

AccountManager accountManager = AccountManager.getInstance(connection);
Map<String, String> map = new HashMap<String, String>();
map.put("username", usr);
map.put("password", pwd);
map.put("email", email);
accountManager.createAccount(usr, pwd, map);

我收到了一个错误:

W/System.err﹕ org.jivesoftware.smack.packet.XMPPError@2beba168
W/System.err﹕ at org.jivesoftware.smack.PacketCollector.nextResultOrThrow(PacketCollector.java:217)
W/System.err﹕ at org.jivesoftware.smack.PacketCollector.nextResultOrThrow(PacketCollector.java:198)

我尝试过使用和不使用Map,同样的错误。 根据jabber.at的Mathias Ertl的说法,可以远程创建帐户,因此我在某处做错了。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

检查您的服务器是否支持远程帐户创建。

accountManager.supportsAccountCreation()