【问题标题】:How to view document directory in iOS emulator?如何在 iOS 模拟器中查看文档目录?
【发布时间】:2018-11-21 18:32:00
【问题描述】:

我编写了一个 React Native 应用程序,它下载文件并将其保存到文档目录。

应用程序给了我这样的路径:

/Users/laurent/Library/Developer/CoreSimulator/Devices/SOMEID/data/Containers/Data/Application/SOMEID/Documents

使用 macOS Finder 我可以看到文件确实已创建。

我的问题是如何从 iOS 模拟器查看这个文件?例如,如果我单击“文件”应用程序,则看不到该文件。基本上用户可以从某个地方获得这个文件,如果可以,在哪里?或者也许我需要将它保存到不同的目录?

【问题讨论】:

    标签: ios react-native ios-simulator document-directory


    【解决方案1】:

    默认情况下,您的应用程序下载的任何文件都只能从该应用程序中获得,它们不会显示在设备的文件系统中。

    据我所知,没有允许您访问 iOS 文件系统的 react-native 库,因此您需要使用原生 iOS 代码来解决您的问题。除了给你指点the official documentation,我能帮上忙的也没什么了。

    【讨论】:

      【解决方案2】:

      您的 iOS 应用默认为沙盒,这意味着其他应用无法访问其资源。模拟器非常不同,因为它在您的 Mac 上运行并将您的文件存储在那里,因此您可以轻松访问它们。

      也就是说,通过向应用程序的info.plist 添加适当的键来公开您的 Documents 文件夹非常简单:

      • 添加 UISupportsDocumentBrowser 键以授予对应用程序 Documents 目录中所有文档的访问权限,并使它们出现在文件应用程序中(iOS 11 及更高版本)。启用此功能后,其他应用也可以在使用 UIDocumentBrowserViewController 时访问您的文档。
      • 添加 UIFileSharingEnabled 键以将应用程序的 Documents 目录公开给桌面 iTunes 应用程序。当与LSSupportsOpeningDocumentsInPlace 键结合使用时,它还将启用文件应用程序支持和文档浏览器,如上所述。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-12
        相关资源
        最近更新 更多