在 /Download 下保存文件的名称为 /storage/emulated/0/Download。有时文件无法访问

问题描述 投票:0回答:2

在我的三星设备上,我将文件放入

/Download
文件夹中。当我在应用程序中选择文件(通过文件浏览器)时,该文件称为
/storage/emulated/0/Download/myfile.db
。该名称存储在我的应用程序设置中。

在应用程序启动时,应打开文件。首先,应用程序检查文件是否存在。在某些情况下,例如每两周一次,该文件被认为不存在!半年以来我朋友的手机也出现这种情况。

为什么会发生这种情况?多年来,一切都进展顺利。

此代码运行 6 年。当然我添加了权限的东西。

非常感谢您的帮助!

android android-external-storage
2个回答
1
投票

您不能使用下载作为文件的保证存储位置。您应该使用应用程序的内部存储。这是 Google 关于下载文件夹的描述:

此空间之所以称为外部空间,是因为它不保证可访问——它是用户可以作为外部存储设备安装到计算机上的存储空间,甚至可能是物理可移动的。

在这里您可以阅读有关Android中内部存储和外部存储的更多信息。

这里有一些关于来自 Google 的 Download 文件夹的更多信息

注意: 如果用户移除 SD 卡或将设备连接到计算机,外部存储可能会变得不可用。并且这些文件对于用户和具有 READ_EXTERNAL_STORAGE 权限的其他应用程序仍然可见。因此,如果您的应用程序的功能依赖于这些文件或者您需要完全限制访问,您应该将文件写入内部存储


0
投票

仅限红号沙漠m1887 m1014 ump

© www.soinside.com 2019 - 2024. All rights reserved.