Как найти внутреннее (хранилище телефона по умолчанию) и внешнее хранилище (съемная SD-карта) в Android? - PullRequest
4 голосов
/ 10 ноября 2011

Мой телефон Motorola имеет внутреннюю память 12 ГБ и функцию съемной SD-карты.

В обозревателе файлов DDMS внутренняя память телефона (12 ГБ) монтируется как sdcard и моя съемная sdcard монтируется как sdcard-ext .

Используя метод " Environment.getExternalStorageDirectory (). GetAbsolutePath () ", я могу получить каталог " / mnt / sdcard ". Есть ли какой-либо метод, с помощью которого я могу найти абсолютный путь моей съемной SD-карты? ... т.е., который вернет мне " / mnt / sdcard-ext "

Ответы [ 2 ]

5 голосов
/ 10 ноября 2011

Платформа Android в настоящее время поддерживает только одно запоминающее устройство, поэтому сложно управлять несколькими (можно попытаться проанализировать /proc/mounts, чтобы получить все подключенные устройства) . Но вы можете использовать Motorola API, который они создали из-за этого факта.

Ознакомьтесь с API внешнего хранилища Motorola .

0 голосов
/ 02 сентября 2016

Попробуйте этот код, чтобы вернуть все имя папки хранения.

Проверьте мой пост здесь:

https://stackoverflow.com/a/38930531/1733810

Не забудьте добавить разрешение.

Получение доступа к внешнему хранилищу

Для чтения или записи файлов во внешнем хранилище ваше приложение должно получить системные разрешения READ_EXTERNAL_STORAGE или WRITE_EXTERNAL_STORAGE. Например:

<manifest ...>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    ...
</manifest>
...