2015-12-07 1 views
1

Мне нужно получить имя накопителя SD-карты, например, наборы для выбора документов для Android. android document pickerКак получить имя SECONDARY STORAGE в Android?

Это показывает два хранилища:

  1. Внутренняя память (что первоначальное название является «первичным», ее реальный путь /storage/emulated/0/)
  2. 9C33-6BBD (SD-карта моего аппарата, его реальное путь /storage/extSdCard/)

Я могу получить путь вторичного хранения с помощью:

System.getenv("SECONDARY_STORAGE"); //returns /storage/extSdCard/ 

Но как я могу получить его имя (9C33-6BBD) программно?

ответ

0

Я считаю, что это будет работать:

Enviroment.getExternalStorageDirectory().name() 
0

Вот решение. попробовать ...

Сначала получите все файлы в списке

var file=new Java.IO.File("storage/"); 
var listOfStorages=file.ListFiles(); 

var isSDPresent=false; 
if(listOfStorages[1].Name.Containes("emulated")||listOfStorages[0].Name.Containes("-")) 
{ 
    isSDPresent=true; 
    var sdCardName=listOfStorages[0].Name; 
} 
Смежные вопросы