React native fs iOS 不显示文档目录中的文件

React native fs iOS not showing files in the document directory

我正在做一个 React Native 项目。我需要将捕获的图像存储在自定义文件夹中。

我为此使用了 React Native fs 库。我可以在所需目录中创建图像,但无法在 iPhone 的文件目录中看到这些图像。

这是我用来存储图像的代码。

 async moveAttachment(capturedImagePath) {

    $filePathDir = `${RNFS.DocumentDirectoryPath}/myapp/myfilename`;
    $filePath = `${$filePathDir }/myfilename.png`;
    return new Promise((resolve, reject) => {
        RNFS.mkdir(filePathDir)
        .then(() => {
            RNFS.moveFile(capturedImagePath, filePath )
            .then(() => resolve(dirPictures))
            .catch(error => reject(error));
        })
        .catch(err => reject(err));
    });
}

我可以在模拟器的文档目录中看到图像,但在 iPhone > 文件目录中看不到。

请帮我解决这个问题。

您应该可以通过更新 Info.plist 来启用它。您需要添加两个键:

UIFileSharingEnabledLSSupportsOpeningDocumentsInPlace 都应添加并设置为 YES

  • UIFileSharingEnabled: 应用程序支持 iTunes 文件共享
  • LSSupportsOpeningDocumentsInPlace: 支持原地打开文档

这将允许您的 DocumentsDirectory 在 iTunes 中打开,它还应该允许您通过 Files 应用程序共享您的文件。

您可以阅读更多关于 LSSupportsOpeningDocumentsInPlace here

In iOS 11 and later, if both this key and the UIFileSharingEnabled key are YES, the local file provider grants access to all the documents in the app’s Documents directory. These documents appear in the Files app, and in a document browser. Users can open and edit these document in place.

请注意,您保存在 Documents 目录中的 任何 项都可以访问。