Backstory:对于使用Catalyst制作的Mac应用程序,推送通知当前是错误的。这意味着如果同步引擎为CloudKit或NSUbiquitousKeyValueStore
,将不会接收在其他设备上所做的更改。作为等待Mac Catalyst上推送通知的错误修复时的临时解决方法,我们的应用需要定期和/或手动请求刷新所有同步的内容。
问题:我们如何请求刷新NSUbiquitousKeyValueStore
的默认实例? (Apple的文档在这里没有显示任何内容。)
从Apple Documentation起,不可能强制NSUbiquitousKeyValueStore从云中提取更新。您只能让iCloud知道可以上载新的键和值。使用实例方法synchronize()
建议调用<< [系统控件这些键和值是已上传。上传键值存储请求的频率为每分钟限制为几个。
NSUbiquitousKeyValueStore.default.synchronize()
的时间是在应用启动时或返回到前台时。