我已建立与XMPP服务器的连接。我的问题是,如果有聊天室,新用户想加入,我是否应该在Smack课程下方注册?
AccountManager accountManager = AccountManager.getInstance(connection);
accountManager.createAccount(username, password);
是否会创建新用户加入Room或是否会为主服务器创建新用户。请帮忙理解。谢谢!
答案 0 :(得分:0)
提到的类和方法createAccount
在服务器上创建新帐户,因为您可以从Github代码中读取:
代码:
/**
* Creates a new account using the specified username and password. The server may
* require a number of extra account attributes such as an email address and phone
* number. In that case, Smack will attempt to automatically set all required
* attributes with blank values, which may or may not be accepted by the server.
* Therefore, it's recommended to check the required account attributes and to let
* the end-user populate them with real values instead.
*
* @param username the username.
* @param password the password.
* @throws XMPPErrorException
* @throws NoResponseException
* @throws NotConnectedException
* @throws InterruptedException
*/
public void createAccount(Localpart username, String password) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
// Create a map for all the required attributes, but give them blank values.
Map<String, String> attributes = new HashMap<>();
for (String attributeName : getAccountAttributes()) {
attributes.put(attributeName, "");
}
createAccount(username, password, attributes);
}