「外部ストレージ」には、リムーバブル ストレージ メディア (SD カードなど) または内部 (リムーバブルではない) ストレージを使用できます。内部 (非リムーバブル) ストレージとリムーバブル SD カードの両方がある場合、「scanning /proc/mounts」と「/system/etc/vold.fstab」の 2 つのファイルからストレージのすべてのパスを取得できます。
ただし、どのパスが内部 (非リムーバブル) ストレージを指しているのかわかりません。ほとんどのデバイスは、Android Sdk のバージョンに従って、「mnt/sdcard」または「storage/sdcard0」を内部ストレージにポイントします (Android 4.1 より前のパスは「mnt/sdcard; Android 4.1 以降のパスは「storage/sdcard0」です)。しかし、一部のデバイスはリムーバブル SD カードへのパスを指しているため、それらを分割する効率的な方法がありません。