使用文字视图

时间:2017-10-14 11:46:36

标签: android android-activity

我创建了一个应用。使用TextView使用按钮上的On click属性,但是,  当我点击文本时,我的应用程序。崩溃

AndroidRuntime:FATAL EXCEPTION:main

处理:com.example.android.myapp,PID:10067                                                                            java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.android.myapp / com.example.android.myapp.Login}:java.lang.NullPointerException:尝试调用虚拟方法'com.google.firebase.auth .FullbaseUser com.google.firebase.auth.FirebaseAuth.getCurrentUser()'对空对象引用

我的代码是

public class MainActivity extends AppCompatActivity {
EditText e1,e2;
    TextView textView;
    FirebaseAuth firebaseAuth;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        e1=(EditText)findViewById(R.id.email);
        e2=(EditText)findViewById(R.id.password);
    textView=(TextView)findViewById(R.id.sign);
        firebaseAuth=FirebaseAuth.getInstance();
        if(firebaseAuth.getCurrentUser()!=null)
        {
            finish();
            startActivity(new Intent(getApplicationContext(),Homepage.class));

        }

    }

    public void Register(View view) {
        String email=e1.getText().toString().trim();
        String pass=e2.getText().toString().trim();
        if(TextUtils.isEmpty(email))
        {
            Toast.makeText(this,"Enter the Email",Toast.LENGTH_SHORT).show();
        return;
        }
        if(TextUtils.isEmpty(pass))
        {
            Toast.makeText(this,"Enter the Pass",Toast.LENGTH_SHORT).show();
        return;
        }
        firebaseAuth.createUserWithEmailAndPassword(email, pass)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        //checking if success
                        if(task.isSuccessful()){
                            //display some message here
                            Toast.makeText(MainActivity.this,"Successfully registered",Toast.LENGTH_LONG).show();
                        }else{
                            //display some message here
                            Toast.makeText(MainActivity.this,"Registration Error",Toast.LENGTH_LONG).show();
                        }

                    }
                });

    }

    public void SignIn(View view) {
        finish();
        Intent intent = new Intent(this,Login.class);
        startActivity(intent);
    }
}

1 个答案:

答案 0 :(得分:0)

  firebaseAuth=FirebaseAuth.getInstance();
  if(firebaseAuth!=null){
        if(firebaseAuth.getCurrentUser()!=null)
        {
            finish();
            startActivity(new Intent(getApplicationContext(),Homepage.class));

        }
   }

为什么你在firebaseAuth中获得null,这个链接可以帮助你:why getting null in firebaseAuth object

希望这会对你有所帮助。