0

Ich erstelle eine App mit Firebase mit einer Friebase UI-Bibliothek für den Authentifizierungs-Wrapper. Die Firebase-Benutzeroberfläche verwendet Google Smart Lock, um zuvor angemeldete Benutzer zu erkennen und sich automatisch anzumelden, wenn die App erneut geöffnet wird. Das Problem tritt auf, wenn ich der App einen weiteren Google-Nutzer hinzufüge. Dann jedes Mal zeigt es mir einen Dialog mit allen Google-Nutzern und ich muss einen von ihnen auswählen, der unnötigen Schritt hinzufügt.Wie kann ich Standardberechtigung wählen, wenn mehrere in Google Smart Lock Firebase?

Multiple credentials screen

Logging in Diagram

Gibt es eine Möglichkeit Firebase Auth speichern die ausgewählten Benutzer als Standard zu machen und dann mit ihm jedes Mal automatisch anmelden?

Dank

Antwort

0

Es stellt sich heraus, Google ist schlauer als ich dachte. Die Standardberechtigung wird automatisch ausgewählt. Der Fehler war auf meiner Seite:

auth = FirebaseAuth.getInstance(); 
    FirebaseUser fUser = auth.getCurrentUser(); 
    if (fUser != null) { //this line triggers multiple users dialog 
     startActivity(ActivityAddEventPopup.createIntent(this, null)); 
     finish(); 

    } 

signIn(); 

Mein signIn(); immer ohne den sonst Block genannt wurde. Dies bedeutet, dass das FULL-Authentifizierungsverfahren immer von Anfang an ausgelöst wurde (siehe Diagramm). Lösung war, signIn in einen else Block zu setzen, so dass es nicht die ganze Zeit aufgerufen wird. Firebase Auth ruft den zuletzt ausgewählten Benutzer ab und meldet sich mit ihm an.

Verwandte Themen