前一阵,立志再忙也要 Keep Coding,于是基本每天都会睡前看会儿文档,或者做一些练习。
想到一个有趣的便签App 的原型,比较适合练习代码,能够自定义界面,然后与 iCloud 同步。
然而掉进了一个大坑,简单标注一下。等春节闲了,再说说研究成果。:D
1.开始自然想到用 UIDocument 的方式来实现,于是翻了遍文档,写 iCloud sync 的部分的时候,发现对于一个便签来说,非常不优雅。最费解的是,如果想预览、更新 iCloud 上文档的内容时,不得不执行 document.open 操作,然后文件的修改日期就更新了,没法按照正常的修改日期排序。而且异步save时也除了很多挠头的问题。
2.于是又翻了几天 Core Data,基本弄明白了怎么工作,也写了一个简单的本地原型。后来翻了老半天也找不到如何集成 Core Data 到 iCloud,官方文档只是说可以看看 Programming Core Data with iCloud,开发者中心翻了个底朝天也没找到。
然后在一个哥们的 gitHub 上才看到,说 iOS 10 以后,相关的方法都 Dispatched 了,以后 apple 可能不支持 Core Data 对于后续 iOS 版本的 iCloud 集成。
3.今天睡前开始研究 CloudKit,但是之前 stackoverflow 上一个大哥说,CloudKit 只是针对 always online 的情况,如果断网,本地的数据不能用。如果映射一个 CloudKit 的数据到本地的 Core Data 也非常麻烦。
恩…
还是先研究一下 CloudKit 再说,如果逼到必须自己搞一个服务端…那我就先写点别的-.-
找到一篇 CloudKit 说得比较明白的入门帖,周末在家研究研究:
https://medium.com/@guilhermerambo/synchronizing-data-with-cloudkit-94c6246a3fda
发表回复