8

我已经创建了用于与我的服务器同步数据的android同步适配器。我工作正常,但现在我希望能够更改我的用户名和密码,而无需再次删除和添加帐户。 我该怎么做?更改android自定义帐户的用户名和密码

我有一个登录屏幕,有编辑文本输入用户名和密码,但如何将这些更改应用到帐户?

编辑:

发现了一种如何更改密码:

AccountManager.get(mContext).setPassword(account, password); 

其中帐户是我的帐号和密码是新的密码。我的问题是:如何更改用户名?

回答

3

我可以更改密码没有问题,但如果我想更改帐户的用户名,我必须删除并用新的用户名重新创建帐户。这会删除该帐户中的所有数据,并从头再次重新帐户。

+0

如果您使用与用户名相同的帐户名称,如果我的理解正确,则不需要,这是正确的。您可以使用不同的标签来识别帐户,并将用户名作为用户数据的一部分存储。 – mtotschnig 2016-12-07 12:41:16

-1

使用AccountAuthenticatorActivity,你可以从设置开 - >帐户&同步页您的帐户里面,或者当您尝试从服务器获取,并得到一个错误,指出错误的登录。在这里查看如何设置它的详细信息。 Writing an Android Sync Provider: Part 1

1
AccountManager.renameAccount(Account account, String newName, AccountManagerCallback<Account> callback, Handler handler) 

这只有在API 21(documentation)已不幸加入。 在以前的版本中,删除并重新创建具有新用户名的帐户是唯一的方法,正如另一个答案中所述。