如何获得正确的外部SDCard位置

时间:2013-04-23 00:05:02

标签: java android storage

为什么Environment.getExternalStorageDirectory()会返回内部存储空间(storage / sdcard0 /)?在我的情况下,sdcard0是本地的,sdcard1外部......等等。

此外:

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

Environment.getExternalStorageDirectory().getAbsolutePath();

将返回本地存储。

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

String rootPath = File.separator+"storage";

然后我会以递归的方式得到所有我需要的东西。

非常感谢任何帮助。

目标是获取所有存储位置的所有根(我认为没有环境变量)。

1 个答案:

答案 0 :(得分:3)

是的,这是正确的。 Environment.getExternalStorageDirectory().getAbsolutePath()将根据供应商的决定返回一个挂载点。现在大多数OEM都将其指向内部挂载点,如sdcard0/emulated/0/

但根装入点始终来自/mnt。因此,如果你想看看除了平常之外的东西,请从这里开始扫描。