Firebase DB 无法更新,只能在调试模式下工作

Firebase DB not possible to update, only works in debug mode

我有一个 react-native 应用程序,它可以判断用户是否允许 Firebase 云消息传递,然后保存用户令牌。它还在大约同一时间保存了用户的地理定位。

如果在我的模拟器上启用了调试模式,这些功能都可以正常工作。但是,如果调试模式不是 运行,我会收到权限被拒绝的警告。有谁知道为什么这只适用于调试模式?

        geoFire.set(uid, [userLocation.lat, userLocation.lng]); 

以上代码应保存位置。 (这适用于启用调试模式)。

const firebaseConfig = {
    apiKey: 'AIzaSyAZxxxxxxx',
    authDomain: 'thxxxxxx',
    databaseURL: 'https://thxxxxxxx',
    storageBucket: 'thxxxxxxxxxxxxx',
}

// Initialize Firebase
const Firebase = firebase.initializeApp(firebaseConfig)

我使用具有以下访问规则的实时数据库

{
  "rules": {
    ".read": "auth.uid != null",
    ".write": "auth.uid != null"
  }
}

我发现很多用户收到这个警告message/problem是因为数据库的权限不正确。然而,我用 Firebase 手册仔细检查了这些,它们应该像这样工作(在 firebase 控制台的 Rules Playground 中测试。

权限被拒绝错误意味着安全规则拒绝了查询。如果您的应用程序的唯一规则是此处显示的内容,则表示查询时没有用户登录该应用程序。