Android получить все доступные устройства хранения - PullRequest
2 голосов
/ 15 ноября 2011

Существует ли какая-либо функция / метод, который позволяет обнаруживать все виды различных хранилищ на вашем телефоне с их именами. Я имею в виду обнаружение всего внутреннего / внешнего хранилища, если на вашем устройстве доступно более одного. И как определить, есть ли в наличии SD-карта или нет?

Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 15 ноября 2011

Я не знаю о других типах запоминающих устройств, я знаю только внутреннее запоминающее устройство и внешнее запоминающее устройство для Android.

Теперь для проверки доступны внешнее запоминающее устройство что-то вроде

public static boolean isSdPresent() {

return android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);

}

return type boolean(true->available,false->NA).

И для Внутреннее хранилище , (Внутреннее хранилище всегда остается (присутствует), поэтому нет необходимости проверять его) просто получите,

File path = Environment.getDataDirectory();

Теперь, вв обоих случаях проверяется доступная свободная память и используемая память,

StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
return Formatter.formatFileSize(this, availableBlocks * blockSize);
1 голос
/ 15 ноября 2011

Попробуйте это ..

public static boolean isSdCardPresent() {

        return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);

        }
...