【问题标题】:Read value for Document Storage ("Store documents & data on") settings on iOS读取 iOS 上文档存储(“将文档和数据存储在”)设置的值
【发布时间】:2019-09-01 12:41:33
【问题描述】:

在 iOS 的设置屏幕中,我可以为启用 iCloud Drive 的应用程序选择“文档存储”设置(类似于移动数据、相机访问选项)。那里显示“将文档和数据存储在”,其中有 iCloud Drive 或 On My Phone 两个选项,意思是本地。

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

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

现在,我决定将文档复制到何处取决于是否启用了 iCloud Drive。但是,可能启用了 iCloud Drive,但用户选择了存储在他的 iPhone 上(本地)。

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

谢谢!

iOS11、Xcode 10.1

【问题讨论】:

  • 我也想知道这个。似乎文档中没有任何内容
  • 这个问题解决了吗?似乎它应该可以从 UserDefaults 中获得,但似乎并非如此。

标签: ios icloud-drive


【解决方案1】:

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

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

documentBrowser.revealDocument(at: URLToImport, importIfNeeded: YES)

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

关于revealDocument的更多信息在这里: https://developer.apple.com/documentation/uikit/uidocumentbrowserviewcontroller/2915849-revealdocumentaturl?language=objc

【讨论】:

    猜你喜欢
    • 2011-02-03
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多