2017-04-05 1 views
0

사용자 가입 및 로그인 방법을 만들었습니다. 그러나 내가 가입하면 firebase에 등록 된 사용자 데이터를 보여주지 않습니다. 내 MainActivity입니다.Android 스튜디오 firebase 인증이 등록되지 않았습니다.

package com.mike.mikeproject; 

import android.content.Intent; 
import android.nfc.Tag; 
import android.support.annotation.NonNull; 
import android.support.annotation.Nullable; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.text.TextUtils; 
import android.util.Log; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.ListView; 
import android.widget.TextView; 
import android.widget.Toast; 

import com.google.android.gms.tasks.OnCompleteListener; 
import com.google.android.gms.tasks.Task; 
import com.google.firebase.auth.AuthResult; 
import com.google.firebase.auth.FirebaseAuth; 
import com.google.firebase.auth.FirebaseUser; 
import com.google.firebase.database.ChildEventListener; 
import com.google.firebase.database.DataSnapshot; 
import com.google.firebase.database.DatabaseError; 
import com.google.firebase.database.DatabaseReference; 
import com.google.firebase.database.FirebaseDatabase; 
import com.google.firebase.database.ValueEventListener; 

import java.util.ArrayList; 
import java.util.HashMap; 

public class MainActivity extends AppCompatActivity { 



private DatabaseReference lDatabase; 

private EditText email; 
private EditText password; 
private Button signup; 
private Button login; 

private FirebaseAuth mAuth; 
private FirebaseAuth.AuthStateListener mAuthListener; 





@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 




    lDatabase = FirebaseDatabase.getInstance().getReference(); 


    email = (EditText) findViewById(R.id.user_email); 
    password = (EditText) findViewById(R.id.user_password); 
    signup = (Button) findViewById(R.id.signup_btn); 
    login = (Button) findViewById(R.id.login_btn); 

    mAuth = FirebaseAuth.getInstance(); 
    mAuthListener = new FirebaseAuth.AuthStateListener() { 
     @Override 
     public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { 

      FirebaseUser user = firebaseAuth.getCurrentUser(); 

      if (user == null){ 




      }else { 

       startActivity(new Intent(MainActivity.this, WelcomeActivity.class)); 


      } 


     } 
    }; 





    signup.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 



      String emailtodb = email.getText().toString().trim(); 

      String passwordtodb = password.getText().toString().trim(); 

      //Toast.makeText(MainActivity.this,"Sign up button clickeddd"+emailtodb+passwordtodb, Toast.LENGTH_LONG).show(); 


      if(!TextUtils.isEmpty(emailtodb) && !TextUtils.isEmpty(passwordtodb)){ 



       mAuth.createUserWithEmailAndPassword(emailtodb,passwordtodb).addOnCompleteListener(new OnCompleteListener<AuthResult>() { 
        @Override 
        public void onComplete(@NonNull Task<AuthResult> task) { 

         if(task.isSuccessful()){ 


          startActivity(new Intent(MainActivity.this,WelcomeActivity.class)); 



         } else { 


          Toast.makeText(MainActivity.this,"Sign up failed", Toast.LENGTH_LONG).show(); 

         } 

        } 
       }); 


      } else { 

       Toast.makeText(MainActivity.this,"email and password required", Toast.LENGTH_LONG).show(); 


      } 





     } 
    }); 


    login.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      startActivity(new Intent(MainActivity.this,LoginActivity.class)); 

     } 
    }); 




} 

@Override 
protected void onStart() { 
    super.onStart(); 

    mAuth.addAuthStateListener(mAuthListener); 

} 



@Override 
protected void onStop() { 
    super.onStop(); 



    if (mAuthListener != null) { 
     mAuth.removeAuthStateListener(mAuthListener); 
    } 


    } 
} 

내 코드에 어떤 문제가 있습니까? 왜 서명하지 않는거야? 미리 감사드립니다.

중포 기지 사용자 레코드 : 당신이 바로 모든 일을하는 경우

enter image description here

+0

어떤 오류가 발생합니까? –

+0

오류가 없습니다. 한번 가입 버튼을 누르면 가입 절차가 진행되지 않고 내 firebase에서 데이터를 볼 수 없습니다 (내 질문에 스크린 샷 추가) – Mikethetechy

+0

명시 적으로 '인터넷'권한을 추가 했습니까? –

답변

0

그래서 대답이었다 그것은 작품을 나던하거나 사용자를 signsup. 에뮬레이터를 사용하여 가입하지 않는 것처럼 보이기 때문입니다. 진짜 안드로이드 장치에 있어야합니다. 내 휴대 전화를 사용하여 나를 위해 일했습니다. .apk로 내보내고 테스트하십시오.

관련 문제