我正在使用firebase和android以及用户身份验证。
我希望活动仅针对具有电子邮件ID的某个特定用户启动 - someemail@gmail.com。
我的代码是:
System.out.println("uid "+auth.getCurrentUser().getEmail());
if(auth.getCurrentUser().getEmail().equals("someemail@gmail.com")){
Intent intent = new Intent(LoginActivity.this, AdminActivity.class);
System.out.println("uid1 "+auth.getCurrentUser().getUid());
startActivity(intent);
finish();
}
else {
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
即使我使用someemail@gmail.com登录,它也会启动MainActivity.class
而不是AdminActivity.class
System.out.println("uid "+auth.getCurrentUser().getEmail());
打印someemail@gmail.com但它在if条件下不起作用。
我是android和firebase的新手,请帮忙。
答案 0 :(得分:0)
问题是你正在使用“==”
进行字符串比较 if(auth.getCurrentUser().getEmail()=="someemail@gmail.com")
使用equals()方法
比较字符串 if(auth.getCurrentUser().getEmail().equals("someemail@gmail.com"))