如何获得正确的外部sd卡位置



为什么Environment.getExternalStorageDirectory()返回内部存储(storage/sdcard0/)?在我的例子中,sdcard0是本地的,sdcard1是外部的……等等。

:

我一直在编码,以获得正确的外部安装的SDCard位置没有任何运气。

Environment.getExternalStorageDirectory().getAbsolutePath();

将返回本地存储。

我递归地扫描文件系统以查找特定类型的文件,但是如果我不硬编码

String rootPath = File.separator+"storage";

那么我就可以递归地得到所有我需要的。

任何帮助都将是非常感激的。

目标是获得所有存储位置的所有根(我不认为有一个环境变量)。

没错。Environment.getExternalStorageDirectory().getAbsolutePath()将根据供应商的决定返回一个挂载点。现在大多数OEM将其指向sdcard0/emulated/0/等内部挂载点。

但是根挂载点总是来自/mnt。因此,如果您想要查看除了常规挂载之外的内容,请从这里开始扫描。

最新更新