我注意到,当我注销时,会弹出一条消息,说“客户端没有执行此操作的权限”,我认为我设置的firebase规则是问题所在,但这并不是因为我的项目需要这些规则。
如何删除此消息?下面是我的代码:
logoutbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FirebaseAuth fauth=FirebaseAuth.getInstance();
fauth.signOut();
Intent intent2 = new Intent(getContext(), MainActivity.class);
startActivity(intent2);
}
});
我试着改变firebase数据库的规则,但没有帮助。
1条答案
按热度按时间fjnneemd1#
当您登出使用者时,从属端很可能会失去存取数据的权限。在这种情况下,数据库服务器会取消该数据的现有监听器,您会在从属端看到权限被拒绝的错误。
如果不想看到该错误消息,则必须在注销之前分离将要取消的侦听器,方法是在注册它们的同一引用/查询上调用
removeEventListener
。请注意,在这种情况下,错误是无害的,因为它只是记录消息并删除侦听器--类似于调用
removeEventListener
时发生的情况。因此,自己清理它们的唯一原因是删 debugging 误消息,除此之外,行为不会改变。