【问题标题】:Remove local icloud files from device?从设备中删除本地 icloud 文件?
【发布时间】:2014-01-13 07:43:37
【问题描述】:

在设备上第一次安装应用程序时,当读取 icloud 文件的内容时,文件检查为真:

[[NSFileManager defaultManager] fileExistsAtPath:[fileURL path]]

但由于尚未将文件下载到设备,我无法读取内容:

[[NSFileManager defaultManager] startDownloadingUbiquitousItemAtURL:fileURL error:nil];

在对文件进行所有操作之后,我想从设备中删除本地副本文件,但不要从 icloud 中删除此文件。 这些副本存储在哪里,您可以删除它们? 副本的 NSURL 必须是不同的 NSURL icloud。如果它们匹配,那么我将删除 icloud 中的文件。

【问题讨论】:

    标签: ios objective-c file icloud nsfilemanager


    【解决方案1】:

    您可以使用以下调用删除本地副本而不从 iCloud 中删除文件。

    [[NSFileManager defaultManager] evictUbiquitousItemAtURL:fileUrl error:nil];

    【讨论】:

      【解决方案2】:

      如果您使用的路径是 ubiquity 容器,则文件会自动同步,因此删除文件将导致 iCloud 文件也被删除。如果要保留本地副本,则需要将文件复制到应用程序本地沙箱目录,因此首先开始下载,一旦完成,然后将文件复制到本地目录或 .nosync 无处不在容器中的子目录.

      iCloud 容器的目的是同步文件而不是云存储。

      【讨论】:

      • 我有例如:下载文件(备份文件) - 设备上不再需要读取和文件。要阅读此文件,我无需将其复制到其他位置。恐怕这会增加应用程序本地沙箱目录的大小。问题是:可以在不从 iCloud 中删除此文件的情况下删除同步文件吗?
      • 我觉得你运气不好。像 Dropbox 这样的东西可能是更好的选择
      猜你喜欢
      • 1970-01-01
      • 2017-09-25
      • 2012-08-19
      • 2015-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-25
      • 1970-01-01
      相关资源
      最近更新 更多