8

Ich habe Sync-Adapter für Android erstellt, die Daten mit meinem Server synchronisiert. Mir geht es gut, aber jetzt möchte ich meinen Benutzernamen und mein Passwort ändern können, ohne das Konto erneut zu entfernen und hinzuzufügen. Wie kann ich das tun?Ändern Sie den Benutzernamen und das Passwort von android benutzerdefinierte Konto

Ich habe einen Login-Bildschirm, der Bearbeitungstexte für die Eingabe von Benutzername und Passwort hat, aber wie Sie diese Änderungen auf das Konto anwenden?

EDIT:

ein Weg gefunden, wie das Passwort zu ändern:

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

wo Konto mein Konto und Passwort ist das neue Passwort ein.

Also jetzt ist meine Frage: WIE DER BENUTZERNAME ÄNDERN?

Antwort

3

Ich kann das Passwort ohne Probleme ändern, aber wenn ich den Benutzernamen des Kontos ändern möchte, muss ich das Konto mit dem neuen Benutzernamen löschen und neu erstellen. Dies löscht alle Daten von diesem Konto und resynchronisiert das Konto erneut von Anfang an.

+0

Das ist wahr, wenn Sie den Kontonamen als identisch mit dem Benutzernamen verwenden, der, wenn ich es richtig verstehe, nicht erforderlich ist. Sie können ein anderes Label zum Identifizieren des Kontos verwenden und den Benutzernamen als Teil der Benutzerdaten speichern. – mtotschnig

-1

Verwenden Sie ein AccountAuthenticatorActivity, die Sie entweder von den Einstellungen öffnen können -> & Sync Seite in Ihrem Konto Konten, oder wenn Sie versuchen, vom Server zu holen und einen Fehler anzeigt falsche Anmeldung erhalten. Hier finden Sie Details zur Einrichtung. Writing an Android Sync Provider: Part 1

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

Dies wurde nur leider hinzugefügt in API 21 (documentation). In früheren Versionen war das Löschen und Wiederherstellen des Kontos mit dem neuen Benutzernamen die einzige Möglichkeit, wie in einer anderen Antwort erwähnt.