我在简单的 Android 应用中写入 Firebase 数据库时遇到问题。我已将我的数据库规则设置为公开:
{
"rules": {
".read": true,
".write": true
}
}
创建了一个简单的类Message
:
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
public class Message {
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference dbRef = database.getReference();
public String sender;
public String message;
public Message(){}
public Message(String sender, String message) {
this.sender = sender;
this.message = message;
}
}
并设置一个按钮来执行 onClick 方法 writeNewMessage
,这些是重要的代码行:
int counter = 0;
public void writeNewMessage(View view) {
counter += 1;
Message messageToWrite = new Message("John", "Simple message: " + counter);
String messageId = String.valueOf(counter);
dbRef.child("users").child(messageId).setValue(messageToWrite);
}
运行时,我收到错误:
W/RepoOperation: setValue at /users/1 failed: DatabaseError: Permission denied
我知道这个问题看起来很简单,而且很可能已经被重复了,但是我还没有找到任何提出这个问题的人,而他们的错误不涉及身份验证或其他一些组件。问题的简单性是最让我困惑的地方。
编辑:我也发现了这个错误:
Failed to load module descriptor class: Didn't find class "com.google.android.gms.dynamite.descriptors.com.google.firebase.auth.ModuleDescriptor"
最佳答案
关于android - Firebase 数据库权限被拒绝,读/写权限设置为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37424544/