0

Ich habe eine App, die die E-Mail- und Passwort-Anmeldung mit Firebase hat. für die Leichtigkeit habe ich Google anmelden. Das Problem ist, wenn ich mich per E-Mail dann in der App anmeldet erstellt einige Daten auf seiner Datenbank.Diese wurden in der Regel bei der Registrierung erstellt.Aber während ich bei Google anmelden, kann ich es einfach machen.Was soll ich tun tun, um zu überprüfen, ob Benutzer sich früher mit dem Google-Konto eingeloggt hat oder nicht. Wenn also der Benutzer Google Mail zum ersten Mal erstellt, erstellt er die neuen Daten, sonst wird er die Daten abrufen, bitte helfen Sie mir, wie ich geschlagen werde.So überprüfen Sie, ob ein Nutzer, der sich gerade zum ersten Mal mit Google angemeldet hat, in Firebase

Antwort

0

Fügen Sie eine Art Flag in der Datenbank hinzu, während Sie sich zum ersten Mal anmelden, und machen Sie es wahr. Überprüfen Sie bei jeder Benutzeranmeldung, ob dieses Flag vorhanden und wahr ist, rufen Sie dann alte Daten ab, oder fügen Sie neue Daten hinzu (oder was immer Sie möchten).

firstlogin: true

diese Javascript-Code mit Facebook signin ist, können Sie eine Idee haben.

var provider = new firebase.auth.FacebookAuthProvider(); 
    function facebookSignin() { 
    firebase.auth().signInWithPopup(provider) 
    .then(function(result) { 
     var user = result.user; 
     firebase.database().ref('/users/'+user.uid).on('value', 
      function(snapshot){ 
      if (!snapshot.exists()) { 
       //user does not exist, add new data 
      }else{ 
       //user exist, retrieve old data 
      } 
     }); //firebase.database().ref ends 
    });//then() ends 
    }//function ends 
+0

Ich habe nicht so versucht.Ich bezog mich auf einen Speicherort, wo Daten gespeichert werden, nachdem eine Instanz gemäß UID abgerufen wurde. Aber das funktioniert nicht. Können Sie mir helfen, dieses Problem nach meinem Kommentar zu lösen –

+0

Überprüfen Sie die bearbeitete Antwort. –

+0

Ich weiß über Wert Event Listener in Firebase Android. Können Sie mir kurz den obigen Code Snippet wie in Java erklären. –

0

Sie müssen die gemeinsame Einstellung speichern und prüfen, ob der Benutzer das erste Mal angemeldet ist oder nicht.

diese link kann Ihnen helfen. Aber bevor Sie in den Code sehen, lesen Sie einfach die Dokumentation für FIREBASE.

+0

Ich habe dies bereits überprüft –

+0

gemeinsame Präferenz wird nicht funktionieren, wenn das Gerät geändert wird. –

+0

Dies wird ein neues Schlüsselpaar für den gleichen Benutzer erstellen, wenn App neu installiert oder auf einem anderen Gerät –

Verwandte Themen