Java firebase身份验证期间出错
我正在开发一个聊天应用程序,需要使用firebase登录并创建一个免费帐户。。我试过了,但遇到了一些问题。。我无法移动到另一个屏幕,即创建新帐户后的主活动,而是显示了一句敬酒的话“你有一些错误” RegisterActivity.javaJava firebase身份验证期间出错,java,android,firebase,Java,Android,Firebase,我正在开发一个聊天应用程序,需要使用firebase登录并创建一个免费帐户。。我试过了,但遇到了一些问题。。我无法移动到另一个屏幕,即创建新帐户后的主活动,而是显示了一句敬酒的话“你有一些错误” RegisterActivity.java 导入android.content.Intent; 导入android.support.annotation.NonNull; 导入android.support.design.widget.TextInputLayout; 导入android.support
导入android.content.Intent;
导入android.support.annotation.NonNull;
导入android.support.design.widget.TextInputLayout;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.util.Log;
导入android.view.view;
导入android.widget.Button;
导入android.widget.Toast;
导入com.google.android.gms.tasks.OnCompleteListener;
导入com.google.android.gms.tasks.Task;
导入com.google.firebase.auth.AuthResult;
导入com.google.firebase.auth.FirebaseAuth;
导入com.google.firebase.auth.FirebaseUser;
公共类注册活动扩展了AppCompatActivity{
私有文本输入布局mDisplayName;
私有文本输入布局mEmail;
私有文本输入布局mPassword;
专用按钮mcreateBtn;
私人消防队;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u寄存器);
mAuth=FirebaseAuth.getInstance();
mDisplayName=(TextInputLayout)findViewById(R.id.reg\u display\u name);
mEmail=(TextInputLayout)findViewById(R.id.reg_电子邮件);
mPassword=(TextInputLayout)findViewById(R.id.reg\u密码);
mcreateBtn=(按钮)findViewById(R.id.reg\u create\u btn);
mcreateBtn.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
String display_name=mDisplayName.getEditText().getText().toString().trim();
字符串email=mEmail.getEditText().getText().toString().trim();
字符串密码=mPassword.getEditText().getText().toString().trim();
注册用户(显示姓名、电子邮件、密码);
}
});
}
私有无效注册用户(字符串显示名称、字符串电子邮件、字符串密码){
mAuth.createUserWithEmailAndPassword(电子邮件,密码).addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
Intent maintent=新的Intent(RegisterActivity.this,MainActivity.class);
星触觉(主旨);
完成();
}否则{
Toast.makeText(RegisterActivity.this,“您有一些错误。”,Toast.LENGTH_LONG.show();
}
// ...
}
});
}
}
活动\u Register.xml
Firebase电子邮件身份验证需要至少6位密码。确保这没有问题。如果没有调试并找出确切的异常,请在此处发布。是的,我尝试了给出10位数字,但没有解决问题。您是否在firebase控制台中启用了电子邮件身份验证?如果您可以显示返回的实际错误,这将有所帮助。我想这说明了怎么做。错误是什么?
import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.design.widget.TextInputLayout;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
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;
public class RegisterActivity extends AppCompatActivity {
private TextInputLayout mDisplayName;
private TextInputLayout mEmail;
private TextInputLayout mPassword;
private Button mcreateBtn;
private FirebaseAuth mAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
mAuth = FirebaseAuth.getInstance();
mDisplayName =(TextInputLayout)findViewById(R.id.reg_display_name);
mEmail = (TextInputLayout)findViewById(R.id.reg_email);
mPassword=(TextInputLayout) findViewById(R.id.reg_password);
mcreateBtn = (Button) findViewById(R.id.reg_create_btn);
mcreateBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String display_name = mDisplayName.getEditText().getText().toString().trim();
String email = mEmail.getEditText().getText().toString().trim();
String password = mPassword.getEditText().getText().toString().trim();
register_user(display_name, email, password);
}
});
}
private void register_user( String display_name, String email, String password) {
mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener( new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
Intent mainIntent = new Intent(RegisterActivity.this,MainActivity.class);
startActivity(mainIntent);
finish();
} else {
Toast.makeText(RegisterActivity.this,"you got some error.",Toast.LENGTH_LONG).show();
}
// ...
}
});
}
}
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".RegisterActivity">
<android.support.design.widget.TextInputLayout
android:id="@+id/reg_display_name"
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="40dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/display_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/reg_email"
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/reg_display_name">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/e_mail" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/reg_password"
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/reg_email">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/password" />
</android.support.design.widget.TextInputLayout>
<Button
android:id="@+id/reg_create_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Create Account"
app:layout_constraintTop_toBottomOf="@+id/reg_password"
tools:layout_editor_absoluteX="212dp" />
</android.support.constraint.ConstraintLayout>