• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 关闭 iCloud 并从无处不在的容器中删除项目

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:27:40 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我的应用中有一个 UISwitch 供用户打开/关闭 iCloud。我想实现以下目标:当用户关闭 iCloud 时,无处不在的容器中的所有内容都将被删除并复制到本地目录作为备份。但是,一旦文件从普遍存在的容器中删除,iCloud 服务器上的副本也会被删除。这基本上清除了 iCloud 上的所有内容。

我有以下问题:

  1. 如何在不影响 iCloud 服务器上的副本的情况下删除无处不在的容器上的文件?

  2. 在禁用 iCloud 之前从普遍存在的容器中删除文件的最佳或标准做法是什么?

  3. iCloud 在初始化/启用后是否可以完全禁用?

谢谢。



Best Answer-推荐答案


在阅读了苹果的文档和其他人的建议后,这是我的理解。我不能 100% 确定它们是否正确。欢迎评论和指正:

  1. 在 ubiquity 容器中添加或删除的任何内容都将与 iCloud 服务器同步。该应用程序无法控制这一点。

  2. 一旦用户在“设置”应用中启用了 iCloud 文档存储,应用就无法将其禁用。应用的职责是提供 UI(假设是 UISwitch)让用户指出他们希望他们的文档与应用的 iCloud 同步的位置。

  3. 如果用户通过关闭应用中的UISwitch(不是在设置中)来关闭iCloud,应用应该做的是停止查询元数据,停止收听 NSMetadataQueryDidUpdateNotification,并停止访问 ubiquity 容器中的文件(如上面 crizzis 所述)。如果稍后用户再次打开 iCloud,则 ubiquity 容器中的文件将自动与 iCloud 同步,除非发生 Unresolved 冲突,否则无需手动合并。

关于ios - 关闭 iCloud 并从无处不在的容器中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43325561/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap