Android 模拟外部存储器(sdcard0)和装载的外部存储器(sdcard1)

Android 模拟外部存储器(sdcard0)和装载的外部存储器(sdcard1),android,storage,Android,Storage,据我所知,Android设备中有三种类型的存储。内部存储、模拟外部存储和装载的外部存储,如SD卡。 那么它们之间的区别是什么呢。 我的问题是我想从外部存储器扫描图像,所以如何支持这些不同类型的设备 如果设备同时具有模拟外部存储器(sdcard0)和装入的外部存储器(sdcard1),则如何扫描这两种存储器。 到目前为止,我的代码片段如下所示 "/DCIM", "/DCIM/Camera", "/DCIM/100MEDIA", //

据我所知,Android设备中有三种类型的存储。内部存储、模拟外部存储和装载的外部存储,如SD卡。 那么它们之间的区别是什么呢。 我的问题是我想从外部存储器扫描图像,所以如何支持这些不同类型的设备

如果设备同时具有模拟外部存储器(sdcard0)和装入的外部存储器(sdcard1),则如何扫描这两种存储器。 到目前为止,我的代码片段如下所示

        "/DCIM",
        "/DCIM/Camera",
        "/DCIM/100MEDIA",
        // Many Samsung phones mount the external sd card to /sdcard/external_sd
        "/external_sd/DCIM",
        "/external_sd/DCIM/Camera",
        "/external_sd/DCIM/100MEDIA"
任何人都可以帮助维护该列表。或者更好的方法是使用一些SDK内置方法,而不是硬编码


任何建议都将不胜感激。

您提到的所有路径/目录都不存在。那你对他们是什么意思?您应该从getExternalStorageDirectory或getExternalFleDir开始。而且最肯定的是,您永远无法获得可移动SD卡的路径。您必须要求用户指出。我使用getExternalStorageDirectory方法组装了上面列出的目录,但仍然无法扫描sdcard1中的照片。对于前三个,这是可能的。但在过去三年中,情况并非如此。所以我想知道你对最后三个做了什么。为什么不显示完整的代码?sdcard1是什么意思?正如之前所说的,Android不会告诉你微型SD卡的路径。在github上托管的项目中,你可以找到完整的代码[此处]()现在代码只支持在模拟存储上扫描照片(其根目录值为sdcard0),我需要添加对挂载的外部SD卡(其根目录值为sdcard1)的支持。你对如何实现这一点有什么想法吗。谢谢你的评论。