问题标签 [android-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
55 浏览

android - 如何使用 Micro sdcard 中的下载管理器创建目录并保存数据 - android

我正在开发一个应用程序,用户可以从中下载视频,目前代码存储在 sdcard 中,但由于内存问题我想存储在 micro sdcard 中。我没有看到任何关于 SO 的问题指导我将数据存储在 micro sdcard 中。

0 投票
0 回答
20 浏览

android - Xamarin android - 应用程序数据

我的应用程序将自定义数据保存在设备上,以便在应用程序中使用。我将它们保存在设备的根目录中,并且该目录是隐藏的(.XXXXX)。

它工作得很好,但我也需要能够在 SD 卡上移动我的应用程序,我尝试这样做并且我的应用程序被正确移动,但不是我的应用程序数据(保存在设备根目录上)。我猜似乎很正常。

有人可以告诉我在哪里可以保存数据以便能够在我在设置中使用 android 功能时同时移动它们(移动到 SD 卡)?有人可以告诉我当应用程序安装在设备上时检索设备上的应用程序路径的方法是什么,以及当应用程序安装在 sd 卡上时我的应用程序路径在 sd 卡上的方法是什么?尝试了一些方法,但我没有找到好的方法。

谢谢

0 投票
2 回答
2849 浏览

android - 为什么从外部存储读取文件不需要 READ_EXTERNAL_STORAGE 权限请求?

我正在模拟器上测试我的应用程序。我有一个导出功能,可以在其中创建并写入外部存储下载目录中的文件。而且我还有一个导入功能,可以从外部存储的下载目录中读取文件。

来自Android 文档

如果设备运行 Android 5.1 或更低版本,或者您的应用的目标 SDK 为 22 或更低版本: 如果您在清单中列出危险权限,则用户必须在安装应用时授予该权限;如果他们不授予权限,则系统根本不会安装该应用程序。

如果设备运行 Android 6.0 或更高版本,并且您的应用的目标 SDK 为 23 或更高版本:应用必须在清单中列出权限,并且必须在应用运行时请求它需要的每个危险权限。用户可以授予或拒绝每个权限,即使用户拒绝权限请求,应用程序也可以继续以有限的功能运行。

我的模拟器在 Android 6.0 上运行,我的应用程序的目标 SDK 是 25,因此我还必须在应用程序运行时请求它需要的每个危险权限。我这样做是为了导出功能,一切正常。但是,当我实现导入功能时,我没有在运行时请求权限。奇怪的是,我仍然可以从外部存储的许可中读取数据,而无需在运行时请求和授予 READ_EXTERNAL_STORAGE。根据这个Android 文档,READ_EXTERNAL_STORAGE 是一个危险的权限。

为了验证,我确保在开始使用该功能之前禁用权限,并在完成后再次验证该权限仍未被授予。虽然我对这种行为感到满意,因为它在运行时无需我请求许可就可以工作,但根据文档,我不相信这种行为是预期的。这就是为什么我想知道是什么导致了这种情况,并在发布应用程序的任何更改之前找出问题所在。

这是我的清单的代码片段:

我选择要读取的文件的代码片段:

我从上面的代码片段中读取文件的代码片段(exportFile 只是来自 onActivityResult 的 URI):

谢谢!

0 投票
2 回答
3210 浏览

android - ACTION_GET_CONTENT Intent 不显示外部存储

我正在为我的 Android 应用程序实现导入功能。我想让用户从他们设备上的外部存储(确切地说是下载目录)和其他在线文件存储(如 DropBox 和 Google Drive)中选择他们想要导入的文件。

我实现了它并在一个模拟器和两个安卓设备上对其进行了测试。当我在模拟器上测试它时,Android 版本 6.0,因为它没有安装 DropBox 和 GoogleDrive,我看到了我所期望的,它能够从下载目录中选择一个文件: 在此处输入图像描述

当我在 Google Pixel 手机 Android 版本 7.1.2 上测试它时,一切都按我预期的那样工作。我可以从下载目录、Google Drive 和 DropBox 中选择一个文件: 在此处输入图像描述

但是,当我在三星 Galaxy 4 设备(Android 版本 5.0.1)上对其进行测试时,我能够从 Google Drive 和 Dropbox 中选择一个文件,但是我没有从我的下载目录中选择一个文件的选项: 在此处输入图像描述

这是我选择文件的代码:

请让我知道我能做些什么来解决这个问题。谢谢!

0 投票
1 回答
1523 浏览

android - 如何检查存储的可用空间?

我将文件保存在应用程序私有文件夹“getFilesDir().getAbsolutePath()”上。我想知道在保存到该位置之前有多少可用空间。

如果没有足够的可用空间,则强制用户删除一些文件以释放空间。

我如何确定有多少可用空间?

0 投票
1 回答
471 浏览

android - 我是否需要在 Android 4.1 及更早版本上明确声明 WRITE_EXTERNAL_STORAGE 权限?

关于 WRITE_EXTERNAL_STORAGE,Android 文档指出

从 API 级别 19 开始,读取/写入 getExternalFilesDir(String) 和 getExternalCacheDir() 返回的应用程序特定目录中的文件不需要此权限。

我的应用程序只读取和写入Android/data//files目录。这是否意味着,为了在我的应用程序在 19 之前的 Android 版本上运行时读取和写入此特定目录,我仍然需要在清单中声明此权限?

0 投票
1 回答
469 浏览

android - Android Uri.getPath() 前面有 /-1/1/

我在获取 Uri.getPath() 时遇到了问题,包括 /-1/1/ 如下所示,Uri 正在进入

从 PICK Multiple Images 如下

我尝试从 Uri 获取文件,以下示例代码总是出错: FileNotFound

但是,如果我得到以下内容并保存到本地文件:它可以完成。

但是我可以先在本地安全输入流,请帮助,我已经搜索过但不确定 Uri 格式是否已更改或现在。

如何处理带有来自 Uri 的路径的文件?. 谢谢

0 投票
1 回答
121 浏览

android - 在 android 中存储教程应用程序的问题和答案

我正在为 Java 教程开发新的 android 应用程序。我想知道存储问题和答案的最佳方式是什么。我计划每个部分有大约 100 个问题。我总共有 5 个部分。

考虑以下选项。但不知道表现如何

  1. 存储在 Sqlite 数据库中 - 但在这种情况下,如何插入问题?
  2. 将其存储在 excel 文件中并使用 poi 读取 excel 并将其显示在应用程序中
  3. 将其存储为 JSON 文件(每个部分一个 json 文件)
  4. 将其存储在 XML 文件中(每个部分一个 xml)

有人可以帮我看看哪个是最好的选择吗?

0 投票
0 回答
34 浏览

android - 将值存储在 ROM 中

我想将我的价值存储在手机的 ROM 中,这是我想要的存储方式:

  1. 当我的应用程序打开时,我想获取之前存储的值
  2. 当我的应用程序运行时,我必须在事件点击时存储值
  3. 当我的应用第二次打开时,我可以在第一次获得我的价值

我的价值是 type List<String>。我怎样才能做到这一点?

0 投票
1 回答
487 浏览

java - 无法从手机内部存储的数据文件夹或文档文件夹中读取文本文件

我正在尝试读取手机内部存储中“数据”文件夹中的 hi.txt 文件。我尝试了以下方法:

但是,我得到了例外:“/data/hi.txt”(没有这样的文件或目录)

我确定 hi.txt 文件在那里!

如果我尝试从内部存储中的文档文件夹中打开它,也会发生同样的事情,如下所示:

我究竟做错了什么?以及如何读取存储在内部存储中任何位置的文本文件?喜欢在 DCIM 文件夹或 Documents 文件夹或 Movies、Pictures 或 Music ..etc 中吗?我需要使用一个可以被手机上的任何应用程序访问的公共文本文件。