因此,在 watchOS 上,我知道您可以安排(和重新安排)aWKRefreshBackgroundTask
在后台为您工作。这对我的应用程序来说非常有用,可以确保 watchOS 上的数据是最新的 - 特别是因为它没有像 iOS 和 macOS 这样接收更新。
除了,我的数据使用 CloudKit 来存储用户的数据。
我想使用类似URLSession
场景的东西,您可以在其中安排WKApplicationRefreshBackgroundTask
创建后台URLSession
任务并将其交给系统的地方。系统反过来会为WKURLSessionRefreshBackgroundTask
您提供检查数据是否完成的位置URLSession
(通过检查下载的数据是否存在)。
我的问题是,你如何用 CloudKit 做这样的事情?
我可以在 中下载我的用户数据WKApplicationRefreshBackgroundTask
,但我认为我不能保证它会在系统提供给我的应用程序的时间内完成。这就是为什么(似乎)Apple 建议您将其拆分为两个后台任务:
WKApplicationRefreshBackgroundTask
- 创建URLSession
并将其交给系统。WKURLSessionRefreshBackgroundTask
- 对从步骤 1 下载的数据采取行动。
我不确定你可以用 CloudKit 做到这一点吗?或者,至少我似乎找不到类似的东西。