我正在开发一个从Firebase数据库接收数据的iOS应用程序 . 我需要保留本地版本的数据库,我发现Firebase的离线功能非常棒 . 现在,
-
有没有办法禁用自动同步,只有当用户点击某个按钮时才会更新?
-
有没有办法只更新新的或修改过的元素而不是重新下载所有内容?
2-双 . 有没有办法知道已添加/修改的每个元素?
- FIRDataSnapshot是否符合NSCoding协议?我想将它保存在plist文件中...
编辑:
在Firebase 3文档中阅读更多内容后,我现在希望在单个请求中获取所有数据库树,是否可能?
我的代码如下
FIRDatabaseReference.goOnline()
var firebase = FIRDatabase.database().referenceWithPath("items")
firebase.observeEventType(.Value, withBlock: { snapshot in
print(snapshot.value)
if let snapshots = snapshot.children.allObjects as? [FIRDataSnapshot] {
for snap in snapshots {
if let postDictionary = snap.value as? Dictionary<String, AnyObject> {
print ("item received")
}
}
}
})
FIRDatabaseReference.goOffline()
1 回答
是的 . 您可以使用observeSingleEventOfType以编程方式控制何时加载数据 .
不是在使用
observeSingleEventOfType
时,因为你有're effectively disabling Firebase'的缓存 .FIRDataSnapshot
不符合NSCoding协议