首页 > 解决方案 > 如何获取Android内部下载目录的路径?

问题描述

我需要获取内部下载目录的路径。

我尝试过的事情:

val home = System.getProperty("user.home")
val downloadsDirectory = File("$home/Downloads"

val downloadsDirectory = File("/storage/emulated/0/Download")

System.getProperty("user.home") 只返回一个空字符串。

我也试过

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)

它返回了这个路径 /storage/emulated/0/Download 但是然后 downloadsDirectory.listFiles() 方法返回 null,尽管我在目录中有一个文件。

标签: android

解决方案


在 Android 9 及更低版本上,使用Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).

在 Android 10 及更高版本上,不要再考虑文件了。相反,切换到存储访问框架,或者,对于有限的场景,使用MediaStore.Downloads.


推荐阅读