当发送Firebase请求并在最后进行活动切换时,我收到了DatabaseError: Permission denied
消息,当在调试模式下运行时(即不让android切换到其他活动)或替换{{ 1}}函数到updateUI()
函数成功完成,数据在服务器中注册。
return;
答案 0 :(得分:0)
问题不在于权限规则,而在于与数据库的连接已关闭并在活动切换中重新打开。
在最后一次写入请求中添加on complete侦听器修复它
mJobDatabase.child("extraParams").setValue(requestValues).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(JobRequestActivity.this, "Job added to the server.",
Toast.LENGTH_SHORT).show();
updateUI();
} else {
// If sign in fails, display a message to the user.
Log.w(TAG, "failed adding work ", task.getException());
Toast.makeText(JobRequestActivity.this, "Could not add job, try again.",
Toast.LENGTH_SHORT).show();
}
}
});