2016-04-04 19 views
0

`Hesap oluşturmak için kullanıcıdan dinamik olarak e-posta ayıklamaya çalışıyorum ancak Firebase bir e-posta hatası döndürmeye devam ediyor ... E-postaları dinamik olarak almanın mümkün olup olmadığını mı merak ediyordunuz ya da e-postalar ve şifre.Firebase e-posta kullanıcı kimlik doğrulaması

final EditText email = (EditText)findViewById(R.id.new_email); 
    final String newEmail = email.getText().toString(); 
    final EditText password = (EditText)findViewById(R.id.new_password); 
    final String newPass = password.getText().toString(); 
    final EditText username = (EditText)findViewById(R.id.full_name); 
    final String userName = username.getText().toString(); 


@Override 
     public void onClick(View v){ 
      rootRef.createUser(newEmail,newPass,new Firebase.ValueResultHandler<Map<String,Object>>(){ 
       @Override 
       public void onSuccess(Map<String,Object> result){ 
        rootRef.child("users").child(userName).child("User Name").setValue(userName); 
        rootRef.authWithPassword(newEmail,newPass,new Firebase.AuthResultHandler(){ 
         @Override 
         public void onAuthenticated(AuthData authData){ 
          Intent a = new Intent(CreateAccount.this,userHome.class); 
          startActivity(a); 
         } 
         @Override 
         public void onAuthenticationError(FirebaseError firebaseError){ 
          text1.setText("An error occurred.Please try again"); 
         } 
        }); 
       } 
       @Override 
       public void onError(FirebaseError firebaseError){ 
        Fragment createAccount = new Fragment(); 
        getSupportFragmentManager().beginTransaction().add(R.id.sign_up_fail,createAccount).commit(); 
        switch (firebaseError.getCode()){ 
         case FirebaseError.EMAIL_TAKEN: 
          text1.setText("That Email is already taken"); 
          break; 
         case FirebaseError.INVALID_EMAIL: 
          text1.setText("That Email is invalid"); 
          break; 
         case FirebaseError.NETWORK_ERROR: 
          text1.setText("Network Error.Check your connection."); 
        } 
       } 
      }); 
     } 
    }); 
+1

Lütfen kodunuzu resim olarak değil metin olarak gönderin. – SubliemeSiem

cevap

0

Hangi hata Firebase getiri yayınlanmıştır olabilirdi.

Sen, e-posta veya şifre hardcode android kullanıcı kimlik doğrulaması için kendi öğretici sayfasını kontrol etmek gerekmez: https://www.firebase.com/docs/android/guide/user-auth.html

* DÜZENLEME İşte *

size yardımcı olabilecek kişisel koddan bir örnektir.

referencia.createUser(email.getText().toString(), senha.getText().toString(), new Firebase.ValueResultHandler<Map<String, Object>>() 
    { 
     @Override 
     public void onSuccess(Map<String, Object> result) 

Şu anda bunu tamamen işlevsel bir uygulamada kullanıyorum. Sizinki çalışmıyorsa, hata mesajınızı gönderebilirsiniz.

+0

Kılavuzlarda, e-postaları asıl e-postaya şu şekilde yazarak eklerler: –

+0

: ref.authWithPassword {"[email protected]", "passwordexample", Firebase.ValueResultHandler >() {. ..}} –

+0

Girdi bir dizedir, herhangi bir metin alanı gibi davranmanız gerekir. – Selhar

İlgili konular