温馨提示:本文最后更新于
2025-01-20 15:38:57
,某些文章具有时效性,若有错误或已失效,请在下方留言。Xcode配置
如果要将应用程序的数据同步到 iCloud,请转到应用程序Target
的 Signing & Capabilities
设置
添加 iCloud 功能
点击 + Capability
按钮,选择 iCloud
功能
选择 CloudKit
在 iCloud
的选项中,选择 CloudKit
功能
添加 CloudKit 容器
点击 Containers
下方的+
号按钮创建新的容器或选择现有的容器。
添加 Background Modes
点击 + Capability
按钮,选择 Background Modes
选择远程通知
在Background Modes的选项中,选择 Remote Notifications
复选框
应用程序现在已配置为将其所有数据与 iCloud
同步。
SwiftData 模型修改
可能需要对 SwiftData 模型进行一些更改,因为 CloudKit
有一些非常具体的要求。如果您不遵循这些要求,您的 iCloud
同步将会默默失败
- 不能在要同步到
CloudKit
的任何属性上使用@Attribute(.unique)
。 - 所有属性都必须具有默认值或与它们的初始值设定项一起标记为可选。
- 所有关系都必须标记为可选。这是特别烦人™,但这是一项要求,所以我们无能为力。
只要您对所有模型进行这些更改,它们就会自动同步到 CloudKit
。如果您的用户稍后从设备中删除您的应用程序然后重新安装,SwiftData 将自动从 iCloud
获取旧数据并在本地同步。
使用 CloudKit 时,您可能会发现 Apple 的 CloudKit 仪表板是查看 CloudKit 如何存储数据的有用资源。您可以在这里找到它https://icloud.developer.apple.com/dashboard 。
© 版权声明
THE END
暂无评论内容