当我单击注销按钮时,我在Android应用程序中收到此错误,敬酒“权限被拒绝”,“用户无权执行此操作”。但是,它看起来并不像异常,因为我没有崩溃,但是错误不断出现。我有什么办法可以避免这种情况。谢谢。
我认为这是由于数据库事件侦听器所致,单击退出按钮后并未将其删除,有没有一种方法可以注销后删除所有数据库事件侦听器。
下面是我的注销代码。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.my_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id){
case R.id.sign_out:
mAuth.signOut();
Intent intent = new Intent(ProfileActivity.this, LoginActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
finish();
return true;
default:
return false;
}
}
@Override
public void onStop() {
super.onStop();
mUserRef.removeEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}```
"rules": {
".read":"auth != null",
".write":"auth != null"
}