我一直在浏览所有与创建watchOS应用,复杂性等相关的Apple文档和视频。仔细研究更新数据和用户界面的流程-但是我没有设法解决一件事。
在所有相关的视频和文档中,都有解释说,URLSession下载任务结束后,应用程序应更新其数据模型并请求系统安排快照更新。
我的问题是:数据模型应该存储/保存在哪里?甚至有必要吗?我应该使用核心数据吗?内存中的单例对象? SQLite?用户默认值?一个简单的JSON文件?在为watchOS编写应用程序时,保持数据模型的首选方法是什么?
我希望存储一系列非常简单的对象(例如,联系人列表,每个联系人都有一个姓名,地址和电话号码,所有这些对象均表示为String
个对象)
这里是WWDC 2016会话的链接,名为“保持手表应用程序最新”,其中解释了我提到的大多数任务和最佳实践- WWDC 2016: Keeping Your Watch App Up to Date
答案 0 :(得分:2)
通常最佳实践是将watchOS的持久数据存储在云中或在随附的iPhone应用程序中。我的猜测是您的来源通过“数据模型”所指的是活动存储中的数据,即应用程序打开时的数据。尤其是如果不需要,您不应该在本地存储冗余数据。不适用于watchOS。
话虽如此,watchOS确实可以访问CoreData和NSCoding方法。我不确定NSUserDefaults-但我还是不会将其用于数据存储。 (这也是iOS的一般原则:CoreData用于数据,UserDefaults用于用户首选项。)Here是类似的线程,说明了如何完成此操作。
但是我强烈建议在将数据存储在手表上之前找到替代方法-那里没有足够的持久存储空间。
编辑:查看Apple的WatchKit docs,以获取有关您的选项的更多详细信息。