1

我正在尝试实现一个功能,用户可以使用 iOS 的“文件”应用程序定义自己的文档。我读到为了让您的应用程序能够访问文件应用程序,您需要在 info.plist 中定义这两个键

    <key>UIFileSharingEnabled</key>
    <true/>
    <key>LSSupportsOpeningDocumentsInPlace</key>
    <true/>

我定义了这两个键,但是当我运行我的应用程序并写入文档目录时,

FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true)

我没有在 Files 应用程序中看到使用我的书面文件创建的任何文件夹。有趣的是,如果我在 iPhone 上运行相同的应用程序,我会立即在 Files 应用程序中看到我的应用程序文件夹。我不确定是什么让共享只发生在 iPhone 而不是 iPad 上。我的 iPhone 运行的是 iOs 13.3,而我的 iPad 运行的是 13.3.1,所以这里差别不大。有没有人知道可能出了什么问题?

4

1 回答 1

5

我有两台 iPad,都显示了我的应用程序的文档文件夹(一系列计算器模拟)。这些应用程序安装在 iOS 13.3 或更早版本下。其中一台 iPad 已更新至 13.3.1。我在两台 iPad 上又添加了一个应用程序。它迅速出现在 13.3 的文件中。设备,但从不在 13.3.1 上。删除应用程序,重置 iPad,重新安装 - 不走运。看起来绝对像 13.3.1 引入的问题。

更新:
我终于弄清楚发生了什么。由于问题在 iOS 13.4 中并未消失,因此我进行了更多挖掘。因此,以下是使一切正常的方法:

  1. 创建一个应用程序,比如“MyApp”,确保“应用程序支持 iTunes 文件共享”“支持就地打开文档”已启用。
  2. 在文件的“位置”中,单击“在我的 iPad 上”。
  3. 您不会看到任何名为“MyApp”的文件夹,因为它是空的。
  4. 转到保存您想要提供给 MyApp 的文件的位置,例如 iCloud Drive。
  5. 长按文件,然后选择移动不是复制!)。
  6. 在弹出的列表中,您应该会看到 MyApp。
  7. 选择它,然后点击右上角的按钮,现在称为复制而不是移动)。
  8. 再次转到“在我的 iPad 上”,您将看到 MyApp 的文件夹,其中包含复制的文件!
  9. 如果您现在删除该文件,MyApp 文件夹将再次为空并消失。
于 2020-03-23T12:50:03.550 回答