gpt4 book ai didi

javascript - 如何在内部(应用程序的私有(private))存储中下载图像文件以响应 native

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:35:53 26 4
gpt4 key购买 nike

我正在做一个 react-native 项目,我需要从服务器下载一些图像文件并将它们保存在应用程序中。这些必须保存在应用程序的内部私有(private)存储中,这样应用程序用户就不能找到这些文件(在非 root 手机中)。我在谷歌上搜索并找到了以下选项:

  1. 使用 AsyncStorage 并以 Base64 字符串格式保存图像文件。 (我想避免这种情况,因为这会增加开销 [稍微增加文件大小] + 转换为 base64 或从 base64 转换为不必要的任务)
  2. 使用 rn-fetch-blob 库以 blob 格式直接从服务器获取/向服务器获取,但我找不到内部存储保存选项。此选项可帮助我将文件存储在文档或下载等中,但我需要将文件存储在内部存储器中。
  3. 我可以使用 URI 作为所有图像的来源,但我想尽可能避免对服务器的依赖。

请建议一种在 React Native 应用程序中下载图像 [或其他格式] 文件的简单方法,该文件必须位于应用程序的私有(private)数据文件夹中,而无需转换为字符串或任何其他媒体。

最佳答案

您可以使用文档目录 作为保存文件的路径。它将文件保存在您想要的应用程序的存储中,当您想要检索文件时,您已经知道基本路径,您只需提供文件名即可访问该文件。

const dirs = RNFetchBlob.fs.dirs; 
RNFetchBlob
.config({
path : dirs.DocumentDir + `${folder_name}/${filename}`
}).fetch('GET', `${fileURL}`).progress((received=0, total=0) => {
//Handle progress of download here.. May be update UI...
}).then((resp) => {
//You can get the path of the file saved using resp.path()
.catch((err) => {
//Handle error here...
});

关于javascript - 如何在内部(应用程序的私有(private))存储中下载图像文件以响应 native ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53479538/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com