读取 iOS 上文档存储(“存储文档和数据”)设置的值

Jim*_*m B 5 ios icloud-drive

在 iOS 的设置屏幕中,我可以为支持 iCloud Drive 的应用程序选择“文档存储”设置(类似于移动数据、相机访问选项)。那里写着“存储文档和数据”,有两个选项:iCloud Drive 或在我的手机上,意思是本地。 在此输入图像描述

如何访问我的应用程序中选定的选项?

我的应用程序基于 UIDocumentBrowser,启用了“支持就地打开文档”和“应用程序支持 iTunes 文件共享”。某些应用程序(例如 Apple Mail)仅在按下“共享”按钮时支持“复制到”选项(与“打开方式”相比)。在这种情况下,我想将共享文档复制到我的应用程序中的相应目录,即本地目录或应用程序的 iCloud Drive 目录,具体取决于用户在常规设置中的选择。

现在,我根据 iCloud Drive 是否启用来决定将文档复制到哪里。然而,有可能 iCloud Drive 已启用,但用户选择存储在他的 iPhone 上(本地)。

商店中有一些基于 UIDocumentBrowser 的应用程序并支持此功能。特别是当他们提供创建新文件功能时

谢谢!

iOS11、Xcode 10.1

Sly*_*lyv 0

有一种方法可以使用“文档存储”选项。

导入文档或其他文件时,您必须使用 UIDocumentBrowserViewController 中的 RevealDocumentAtURL:importIfNeeded:completion: 函数:

documentBrowser.revealDocument(at: URLToImport, importIfNeeded: YES)
Run Code Online (Sandbox Code Playgroud)

它根据 iOS 设置中的“文档存储”值在 url 处创建新文档。

有关 RevealDocument 的更多信息: https://developer.apple.com/documentation/uikit/uidocumentbrowserviewcontroller/2915849-revealdocumentaturl ?language=objc