我剛剛發現了大約Parse's Local Data Store,它看起來像處理在線/離線同步的SQL數據庫。使用分析來替換核心數據
我正在爲想要類似於聯繫人應用程序的客戶編寫應用程序。聯繫人可以脫機添加/編輯,也可以添加到其他設備上,並且都需要正確同步,而不是創建重複的實體。
正在使用解析本地數據存儲一個可行的選項?
我這樣做在App委託並完成與選擇的方法啓動:
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if error == nil {
if let objects = objects as? [PFObject] {
PFObject.pinAllInBackground(objects, block: nil)
}
} else {
println("Error: \(error!) \(error!.userInfo!)")
}
}
然後在我的初始視圖控制器我這樣做:
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if error == nil {
if let objects = objects as? [PFObject] {
self.athleteArray = objects
self.tableView.reloadData()
}
} else {
println("Error: \(error!) \(error!.userInfo!)")
}
}
不過,我想是因爲應用程序代理查詢在後臺運行,當視圖控制器運行時,數據存儲沒有收到對象,因爲tableview顯示爲空。
當我稍後再次啓動應用程序時,由於數據存儲已填充,所以對象已存在。
如何使用Parse的本地數據存儲管理同步對象(實時,無需第二次應用程序啓動)?我做錯了什麼嗎?
是的,我想我會堅持核心數據+解析,主要是爲了網絡最小化。感謝您的洞察! –
我是否可以使用解析來在本地存儲數據作爲核心數據的完整替代?我的意思是說,沒有免費的解析帳戶的互聯網存儲。 –
是的,你可以使用Parse的本地存儲。我的結果好壞參半。因此,我付出雙DB解決方案的代價。 – adonoho