如何访问 Android App 中下载目录中的文件
How to get access to files in download directory in Android App
我正在编写一个 android 应用程序。在应用程序中,我需要访问下载目录 \DOWNLOAD。我可以在 app 目录中读取和写入文件,当我请求根目录中的文件时,我会看到 DOWNLOAD 目录。
但是当我使用
File[] files = new File("\DOWNLOAD").listFiles();
结果不是一个有效的数组而是 null。
我加了
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
到 AndroidManifest.xml 并且我在 phone 上启用了存储权限。
我还必须做什么才能访问下载目录中的文件?
亲切的问候,
沃尔夫冈
在清单文件中添加存储读取权限
参考:https://www.journaldev.com/9400/android-external-storage-read-write-save-file
问题的解决方案是同时添加
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
到AndroidManifest.xml并使用
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).listFiles();
谢谢,您的帮助!
String home = System.getProperty("user.home");
File file = new File(home+"/Downloads/" + fileName + ".txt");
好像加了
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
还不够。现在我另外使用以下代码在运行时请求此权限:
String[] requiredPermissions = { Manifest.permission.READ_EXTERNAL_STORAGE };
ActivityCompat.requestPermissions(this, requiredPermissions, 0);
它再次工作:)
我正在编写一个 android 应用程序。在应用程序中,我需要访问下载目录 \DOWNLOAD。我可以在 app 目录中读取和写入文件,当我请求根目录中的文件时,我会看到 DOWNLOAD 目录。 但是当我使用
File[] files = new File("\DOWNLOAD").listFiles();
结果不是一个有效的数组而是 null。
我加了
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
到 AndroidManifest.xml 并且我在 phone 上启用了存储权限。
我还必须做什么才能访问下载目录中的文件?
亲切的问候, 沃尔夫冈
在清单文件中添加存储读取权限
参考:https://www.journaldev.com/9400/android-external-storage-read-write-save-file
问题的解决方案是同时添加
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
到AndroidManifest.xml并使用
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).listFiles();
谢谢,您的帮助!
String home = System.getProperty("user.home");
File file = new File(home+"/Downloads/" + fileName + ".txt");
好像加了
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
还不够。现在我另外使用以下代码在运行时请求此权限:
String[] requiredPermissions = { Manifest.permission.READ_EXTERNAL_STORAGE };
ActivityCompat.requestPermissions(this, requiredPermissions, 0);
它再次工作:)