我正在使用Firebase开发iOS应用,而且我发现完成处理程序非常不可靠。
根据文档中的代码示例,我有以下内容:
...
let ref = Firebase(url:self.FIREBASE_URL)
let userRef = ref.childByAppendingPath("user").childByAppendingPath(userID)
userRef.updateChildValues(prefData, withCompletionBlock: { (error:NSError?, ref:Firebase!) in
if(error != nil){
self.showErrorWithTitle("Database Error", description: error!.localizedDescription)
print("error in updateUserPrefs \(error!.localizedDescription)")
}
})
此代码大部分时间都有效,但有两大问题,
1)如果我想使用持久性:
Firebase.defaultConfig().persistenceEnabled = true
完成块永远不会触发。
2)如果应用程序处于脱机状态,则完成块永远不会触发。
我正在努力开发的简单场景:
感谢您的时间