Android studio 如何为android添加登录失败
这是非常奇怪的,因为我可以注册和登录模拟器,但当我在手机上运行我的apk应用程序时,我根本无法注册!它给出了一条注册失败的消息!有没有办法在手机上显示信息代码有什么问题?我应该使用与我的其他项目相同的代码,但我认为我会通过新代码学习新的东西。我比较了这些代码,虽然这里的代码有点不同,但我唯一能想到的是我没有添加实现的View.OnClickListener。当我试图实现它时,我到处都是错误Android studio 如何为android添加登录失败,android-studio,Android Studio,这是非常奇怪的,因为我可以注册和登录模拟器,但当我在手机上运行我的apk应用程序时,我根本无法注册!它给出了一条注册失败的消息!有没有办法在手机上显示信息代码有什么问题?我应该使用与我的其他项目相同的代码,但我认为我会通过新代码学习新的东西。我比较了这些代码,虽然这里的代码有点不同,但我唯一能想到的是我没有添加实现的View.OnClickListener。当我试图实现它时,我到处都是错误 public class RegisterActivity extends AppCompatActiv
public class RegisterActivity extends AppCompatActivity {
private EditText email;
private EditText password;
private Button register;
private static final String TAG = "RegisterActivity";
private FirebaseAuth auth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
email = findViewById(R.id.email);
password = findViewById(R.id.password);
register = findViewById(R.id.register);
auth = FirebaseAuth.getInstance();
if(auth.getCurrentUser() != null) {
finish();
startActivity(new Intent(this, MainActivity.class));
}
register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String txt_email = email.getText().toString();
String txt_password = password.getText().toString();
if (TextUtils.isEmpty(txt_email) || TextUtils.isEmpty(txt_password)) {
Toast.makeText(RegisterActivity.this,"Empty credentials", Toast.LENGTH_SHORT).show();
} else if (txt_password.length() < 6) {
Toast.makeText(RegisterActivity.this, "Password too short!", Toast.LENGTH_SHORT).show();
} else {
registerUser(txt_email, txt_password);
}
}
});
}
private void registerUser(String email, String password) {
auth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(RegisterActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()) {
// Send an email address to let the user verify their email
FirebaseUser user = auth.getCurrentUser();
// assert user != null;
user.sendEmailVerification().addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Toast.makeText(RegisterActivity.this, "Verification Email has been sent", Toast.LENGTH_SHORT).show();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "onFailure: Email not sent " + e.getMessage());
}
});
Toast.makeText(RegisterActivity.this, "Registration user successful", Toast.LENGTH_SHORT).show();
startActivity(new Intent(RegisterActivity.this, MainActivity.class));
finish();
} else {
Toast.makeText(RegisterActivity.this,"Registration failed" , Toast.LENGTH_SHORT).show();
}
}
});
}
}
公共类注册表活动扩展了AppCompatActivity{
私人文本电子邮件;
私有文本密码;
专用按钮寄存器;
私有静态最终字符串标记=“RegisterActivity”;
私有FirebaseAuth-auth;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u寄存器);
email=findviewbyd(R.id.email);
password=findviewbyd(R.id.password);
寄存器=findViewById(R.id.register);
auth=FirebaseAuth.getInstance();
if(auth.getCurrentUser()!=null){
完成();
startActivity(新意图(this,MainActivity.class));
}
register.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
String txt_email=email.getText().toString();
字符串txt_password=password.getText().toString();
if(TextUtils.isEmpty(txt|u电子邮件)| TextUtils.isEmpty(txt|u密码)){
Toast.makeText(RegisterActivity.this,“空凭证”,Toast.LENGTH_SHORT.show();
}else if(txt_password.length()<6){
Toast.makeText(RegisterActivity.this,“密码太短!”,Toast.LENGTH_short.show();
}否则{
注册服务器(txt_电子邮件、txt_密码);
}
}
});
}
私有无效注册器(字符串电子邮件、字符串密码){
auth.createUserWithEmailAndPassword(电子邮件,密码).addOnCompleteListener(RegisterActivity.this,new OnCompleteListener()){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
//发送电子邮件地址,让用户验证其电子邮件
FirebaseUser=auth.getCurrentUser();
//断言用户!=null;
user.sendEmailVerification().addOnSuccessListener(新OnSuccessListener()){
@凌驾
成功时公开作废(作废避免){
Toast.makeText(RegisterActivity.this,“验证电子邮件已发送”,Toast.LENGTH_SHORT.show();
}
}).addOnFailureListener(新的OnFailureListener(){
@凌驾
public void onFailure(@NonNull异常e){
Log.d(标记“onFailure:Email not sent”+e.getMessage());
}
});
Toast.makeText(RegisterActivity.this,“注册用户成功”,Toast.LENGTH_SHORT.show();
startActivity(新意图(RegisterActivity.this、MainActivity.class));
完成();
}否则{
Toast.makeText(RegisterActivity.this,“注册失败”,Toast.LENGTH_SHORT.show();
}
}
});
}
}