在Firebase实时数据库iOS中启用持久性时,Firebase查询不工作

在Firebase实时数据库iOS中启用持久性时,Firebase查询不工作,ios,swift,firebase,firebase-realtime-database,ios11,Ios,Swift,Firebase,Firebase Realtime Database,Ios11,在Firebase实时数据库iOS(Swift)中启用持久性时,Firebase查询不工作 使用Firebase(4.1.1) 使用FirebaseDatabase(4.0.2) Xcode版本9.0 iOS基本Sdk iOS 11.0 Database.database().isPersistenceEnabled = true 当持久性变为false时,查询工作正常 示例查询: ref.child("user").queryOrdered(byChild: "name").queryEqu

在Firebase实时数据库iOS(Swift)中启用持久性时,Firebase查询不工作

使用Firebase(4.1.1) 使用FirebaseDatabase(4.0.2)

Xcode版本9.0 iOS基本Sdk iOS 11.0

Database.database().isPersistenceEnabled = true
当持久性变为false时,查询工作正常

示例查询:

ref.child("user").queryOrdered(byChild: "name").queryEqual(toValue:"john")
   .observeSingleEvent(of: .value, with:  { (snapshot) in
});

你能具体说明什么东西没有按你期望的方式工作吗?当禁用持久性并且检索到名为john的所有用户时,快照确实存在,但当持久性设置为true时,快照不存在。如果用户登录后应用内发生任何写入,但当重新安装应用时,它将显示用户,但如果在该安装中添加了名为john的用户,这不反映可能与我面临的类似问题重复。没有干净的解决办法。我只是使用了观察方法,然后在获得所需数据后移除了观察者。您还可以尝试查看KeeySync.thank You@rMickeyD,将keep Synched添加到数据库引用解决了此问题