Я пытаюсь создать приложение для входа в систему с помощью firebase, и у меня возникают проблемы с аспектом регистрации в дизайне. Когда я собираю и запускаю свое приложение, оно прекрасно собирается и запускается, однако, когда я использую приложение на своем эмуляторе и нажимаю кнопку регистрации, кнопка не отвечает. Я могу нажать на кнопку, но onClickListener не активирован.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_registration);
setupUIViews();
mAuth = FirebaseAuth.getInstance();
sign.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (validate() ) {
String user_email = email.getText().toString().trim();
String user_Password = pass.getText().toString().trim();
registerUser(user_email, user_Password);
}
}
});
already.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(Registration.this, Login.class));
}
});
}
public void registerUser(String x, String y){
mAuth.createUserWithEmailAndPassword(x, y)
.addOnCompleteListener(Registration.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
Toast.makeText(Registration.this, "Registration Complete", Toast.LENGTH_SHORT).show();
startActivity(new Intent(Registration.this, Login.class));
} else {
Toast.makeText(Registration.this, "Registration failed" + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
}
private void setupUIViews() {
user = (EditText) findViewById(R.id.editText5);
email = (EditText) findViewById(R.id.Email);
pass = (EditText) findViewById(R.id.etPassword);
phone = (EditText) findViewById(R.id.Pnumber);
first = (EditText) findViewById(R.id.FirstName);
last = (EditText) findViewById(R.id.LastName);
sign = (Button) findViewById(R.id.button15);
already = (TextView) findViewById(R.id.textView);
}
private Boolean validate(){
Boolean result = false;
String name = first.getText().toString();
String email1 = email.getText().toString();
String username = user.getText().toString();
String lastt = last.getText().toString();
String password = pass.getText().toString();
String phone1 = phone.getText().toString();
if (name.isEmpty() || email1.isEmpty() || lastt.isEmpty() ||
password.isEmpty() || phone1.isEmpty() || username.isEmpty()) {
Toast.makeText(Registration.this, "Please Fill in all fields ", Toast.LENGTH_SHORT).show();
} else {
result = true;
}
return result;
}
}
эта проблема началась, когда я добавил Google Play в свой эмулятор. До этого моя кнопка входа в систему генерировала только сообщение об ошибке, которое я встроил в функцию проверки. Предполагается, что кнопка со знаком вызывает функцию проверки, а затем создает нового пользователя в моем приложении Firebase. Когда я проверяю свой logcat, я получаю эту ошибку:
17856-17889/com.example.habib.linx E/FirebaseInstanceId: Google Play services missing or without correct permission.