2016-07-19 3 views
0

Ich habe ein Problem mit meinen Anmelde- und Registrierungs-Ereignissen in Firebase. Der Code überspringt das gesamte Ereignis.Firebase E-Mail + Passwort Anmeldungsereignis nicht ausgelöst

public class LoginFragment extends Fragment { 

    String TAG = "LOGIN"; 
    TextView tvLoginError; 
    EditText etUsername, etPassword; 
    Button btnLogin; 

    public LoginFragment() {} 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.login, container, false); 
     setupTools(rootView); 
     return rootView; 
    } 

    private void setupTools(View rootView){ 
     tvLoginError = (TextView) rootView.findViewById(R.id.tvLoginError); 
     etUsername = (EditText) rootView.findViewById(R.id.etUsername); 
     etPassword = (EditText) rootView.findViewById(R.id.etPassword); 
     btnLogin = (Button) rootView.findViewById(R.id.btnLogin); 

     btnLogin.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       final String username = etUsername.getText().toString(); 
       final String password = etPassword.getText().toString(); 

       // login 
       Authenticate.mAuth.signInWithEmailAndPassword(username, password).addOnCompleteListener(getActivity(), new OnCompleteListener<AuthResult>() { 
        @Override 
        public void onComplete(@NonNull Task<AuthResult> task) { 
         Log.d(TAG, "signInWithEmail:onComplete:" + task.isSuccessful()); 

         // If sign in fails, display a message to the user. If sign in succeeds the auth state listener will be notified and logic to handle the signed in user can be handled in the listener. 
         if (!task.isSuccessful()) { 
          Log.w(TAG, "signInWithEmail", task.getException()); 
          tvLoginError.setText("Login failed - " + task.getException().getMessage().toString()); 
         } 
        } 
       }); 
      } 
     }); 

    } 
} 

Authenticate.mAuth ist nicht null. Benutzername und Passwort sind festgelegt.

Es gibt keine Fehler, es überspringt nur die onComplete Funktion in signInWithEmailAndPassword vollständig. Mein AuthStateListener Ereignis in Authentication wird gefeuert onResume in Authentication (der Benutzer ist ausgeloggt, da ich nicht registrieren oder anmelden kann).

Ich habe die Internet-Erlaubnis in meinem Manifest auch.

Antwort

0

Es stellte sich heraus, es war nichts falsch mit meinem Code, aber meine google_services.json Datei war inkorrekt (keine Ahnung warum, ich habe das aus Firebase/Google nachdem ich Firebase Auth eingerichtet habe). Ich habe es zuletzt aktualisiert, indem ich eine Einstellung in Firebase geändert habe, diese Einstellung dann zurückgenommen und google_services.json erneut heruntergeladen habe. Das hat funktioniert ... Seltsam.

0

Sie müssen einige weitere Details in Ihrer Frage angeben und Sie können versuchen, this Tutorial zu folgen. Es zeigt, wie Firebase-Authentifizierung Demo-App mit der neuen Firebase E-Mail & Passwort-Authentifizierung erstellen.

Verwandte Themen