我写了一个React Native应用程序,它下载文件并将其保存到文档目录。
应用程序为我提供了这样的路径:
/用户/劳伦/库/开发商/ CoreSimulator /设备/ SOMEID /数据/容器/数据/应用/ SOMEID /文件
并使用macOS Finder我可以看到文件确实已经创建。
我的问题是如何从iOS模拟器中查看此文件?例如,如果我单击“文件”应用程序,则无法看到该文件。基本上这个文件可以从某个地方提供给用户,如果有的话,在哪里?或者我可能需要将其保存到其他目录?
答案 0 :(得分:0)
默认情况下,您的应用程序下载的任何文件只能从该应用程序中获取,它们不会显示在设备的文件系统中。
据我所知,没有反应原生库允许您访问iOS文件系统,因此您需要使用原生iOS代码来解决您的问题。除了指向the official documentation之外,我无能为力。
答案 1 :(得分:0)
默认情况下,您的iOS应用程序是沙盒,这意味着没有其他应用程序可以访问其资源。模拟器非常不同,因为它在您的Mac上运行并将文件存储在那里,因此您可以轻松访问它们。
也就是说,通过向应用info.plist
添加相应的密钥来展示您的Documents文件夹非常简单:
UISupportsDocumentBrowser
密钥以授予对应用文档目录中所有文档的访问权限,并将其显示在“文件”应用程序(iOS 11及更高版本)中。启用此功能后,其他应用也可以在使用UIDocumentBrowserViewController
时访问您的文档。UIFileSharingEnabled
键,将应用的Documents目录公开给桌面iTunes应用。与LSSupportsOpeningDocumentsInPlace
密钥结合使用时,它还将启用上述文件应用程序支持和文档浏览器。