在Android Java中使用Firebase Cloud Firestore写入数据时,可能会遇到一些错误。以下是一些常见错误和解决方法的示例代码:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
注意:这是一个非常宽松的规则,只适用于开发和测试阶段。您应该根据您的应用程序需求来编写更安全的规则。
FirebaseFirestore db = FirebaseFirestore.getInstance();
// 在写入数据之前确保Firestore实例被初始化
// 写入数据的示例代码
Map data = new HashMap<>();
data.put("name", "John");
data.put("age", 25);
db.collection("users").document("johnDoe").set(data)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(Void aVoid) {
Log.d(TAG, "Data has been written successfully!");
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e(TAG, "Error writing data", e);
}
});
FirebaseFirestore db = FirebaseFirestore.getInstance();
DocumentReference docRef = db.collection("users").document("johnDoe");
// 检查是否为空引用
if (docRef != null) {
Map data = new HashMap<>();
data.put("name", "John");
data.put("age", 25);
docRef.set(data)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(Void aVoid) {
Log.d(TAG, "Data has been written successfully!");
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e(TAG, "Error writing data", e);
}
});
} else {
Log.e(TAG, "DocumentReference is null");
}
这些是常见的Firebase Cloud Firestore写入错误和相应的解决方法。根据您遇到的具体错误,可以调查错误消息并采取适当的措施。