首页 > 解决方案 > Android 中的 Firestore 权限在测试规则中被拒绝

问题描述

我是第一次使用 Firestore,我面临 Permission Denied 的问题,我在 SO 中找到了很多解决方案,但仍然无法解决我的问题。

这是我的代码

findViewById<FloatingActionButton>(R.id.fab).setOnClickListener { view ->
                val db = Firebase.firestore

            val city = hashMapOf(
                "name" to "Los Angeles",
                "state" to "CA",
                "country" to "USA"
            )

            db.collection("cities").document("LA")
                .set(city)
                .addOnSuccessListener {
                    Timber.d("DocumentSnapshot successfully written!")
                }
                .addOnFailureListener { e ->
                    Timber.d("Error writing document ${e.message}")
                }
        }

我的 Firestore 规则是

service firebase.storage {    
  match /databases/{database}/documents {
    match /{document=**} {    
      allow read, write: if true;    
    }    
  }    
}

如您所见,我设置了公共规则,因此任何人都可以编辑更新或删除记录。

我仍然得到许可被拒绝

标签: androidfirebasegoogle-cloud-firestorefirebase-security

解决方案


不知道是什么问题,

创建了另一个项目运行(在 Android Studio 和 Firebase 中),具有相同规则的相同代码。

效果很好!!

浪费了我的 3 个小时 :(


推荐阅读