Я реализовал свой аутентификатор AccountManager, а также сервис и всю сделку, и, похоже, все работает нормально.
Однако есть одна маленькая проблема: мне нужна только одна учетная запись для моего приложения.существует в диспетчере учетных записей, но, похоже, не может найти способ ограничить это.
Является ли мое единственное решение для поиска и удаления текущих учетных записей (по типу) перед добавлением новой учетной записи?
Мой текущий код:
private void removeAccounts()
{
Account [] accounts = mAcctMgr.getAccountsByType (mAccountType);
if (accounts.length == 0) return;
final Handler handler = new Handler ();
AccountManagerCallback<Boolean> callback = new AccountManagerCallback<Boolean>()
{
@Override
public void run(AccountManagerFuture<Boolean> arg0)
{
// nada
}
};
for (Account a : accounts) {
mAcctMgr.removeAccount (a, callback, handler);
}
}
Я ни в коем случае не называю это элегантным решением, но на данный момент кажется, что это единственное, что работает.