1

我正在使用UIDocumentBrowserViewController使用“新方式”存储文档(iOS 11+) 。不需要 iCloud API、权利等——只需工作(在单独的文档浏览器进程的控制下)。

但是,我还没有弄清楚如何以这种方式以编程方式重命名(即移动)文档,至少在 iCloud 中是这样。标准的“url.setResourceValues()”在本地文件系统上工作得很好,但在 513 中呈现/在 iCloud 中不允许。当创建的文档实际上是通过文档浏览器控制时,所有以前的方法(使用全套 iCloud 功能和权利,使用复杂的 FileCoordinator 编排等)也不起作用。

我找不到任何合理的文档或示例,说明如何使用UIDocumentBrowser来移动它(以及我的)控制下的文档。有UIDocumentBrowserImportModeMove模式可以满足我的需要,但是我不知道如何在给定的UIDocument上以编程方式启动它。

有没有人已经有了这样做的经验?

谢谢,习惯

4

1 回答 1

1

在用户选择文档后,没有 API 可以移动文档浏览器返回给您的文档。您应该向 Apple 提交错误以获取错误。

如果这是在您的 iCloud 容器内,您可以使用 iCloud 权利并-[NSFileManager URLForUbiquityContainerIdentifier:]获得对您的容器的沙箱访问权限,并使用 NSFileManager 在内部做任何您想做的事情;但这不适用于容器外部的 iCloud 或其他文件提供程序(Dropbox ...)。

于 2018-11-09T08:59:28.527 回答