GoogleAccountCredential name ist null, obwohl setSelectedAccountName (Android 6.0) aufgerufen wurde

Ich habe einen Endpunkt mit einem gesicherten Backend erstellt und verwende ihn seit März in einer App, die ich erstelle (QuelldokumenteHie). Ich habe vor kurzem die neueste Version auf meinem Android 6.0-Gerät installiert, und es ist ein seltsamer Fehler aufgetreten (es funktioniert perfekt unter 4.2.2 und 5.1).

Der spezifische Fehler ist:

IllegalArgumentException: the name must not be empty: null 

Welche ich auf einen Fehler mit dem Berechtigungsnachweis zurückgeführt habe, können Sie den folgenden Code sehen. Unter Android 6.0 lautet der Name möglicherweise "[email protected]", aber die Zeichenfolge "test" ist null!

Gibt es etwas Spezielles an 6.0, das GoogleAccountCredential verändert hat?

public static GoogleAccountCredential getCredential(Context ctx) {

    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctx);
    String account = prefs.getString(UserProfileHelper.PREF_USER_ACCOUNT, "");
    GoogleAccountCredential credential = GoogleAccountCredential.usingAudience(ctx,
            "server:client_id:MY_ACCOUNT_NUMS.apps.googleusercontent.com")
            .setSelectedAccountName(account);


    String test = credential.getSelectedAccountName();
    return credential;
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage