2017-12-19 3 views
0

Ich habe versucht, auf Vollständigkeit Hörer, aber ich möchte überprüfen, wenn ich die Schließen Sesion-Taste drücken, wenn keine Daten übrig sind, um zu laden, mein Problem ist, dass wenn ich schließen session schließen und gehen Zu meiner loginActivity werden die Daten immer noch auf Firebase hochgeladen, also bekomme ich einen Null Fehler, weil es den Benutzer nicht erreichen kann, die letzten Daten zu posten, was ich tun möchte, ist einen Listener auf den Close Sesion Button zu legen dass Benutzer-ID wird mit Uploads gemachtWarten bis Firebase fertig Upload in die Datenbank

button.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { 
       @Override 
       public boolean onPreferenceClick(Preference preference) { 


         Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(new ResultCallback<Status>() { 
          @Override 
          public void onResult(@NonNull Status status) { 
//here i want to test if the user has finished uploading all before sign out 

           FirebaseAuth.getInstance().signOut(); 
           mGoogleApiClient.disconnect(); 
           finish(); 
          } 
         }); 



        return true; 
       } 
      }); 
+0

Was laden Sie auf Firebase hoch? –

Antwort

1

Sie brauchen nicht, bis Firebase Finish Hochladen auf die Datenbank zu warten, müssen Sie eine DatabaseReference.CompletionListener verwenden.

Diese Schnittstelle als Methode nach der Mitteilung verwendet wird, wenn eine Operation durch den Datenbank-Server quittiert wurde und vollständige

angesehen werden kann Dies bedeutet, dass einmal wurde Ihre Daten auf Firebase Datenbank-Server erfolgreich writen Dann kannst du dich abmelden.

Verwandte Themen