0
我有一個帶有SD卡插槽的電話(B15 CAT)。當我在這款手機中插入SD卡,並要求外部存儲目錄中:如何獨立管理外部存儲
Environment.getExternalStorageDirectory()
它總是返回sdcard0的空白,這是內部存儲器。這個記憶對我的需要來說太小了。 通過列表/ mnt我找到了一個名爲/ sdcard2的掛載點,它是「真正的」scard。 不幸的是sdcard2並不似乎是一個標準和其他一些品牌會用一些其他的名字......
明知getExternalStorageDirectory()似乎工作電話如預期,沒有SD卡插槽,如Nexus 4,應該如何我處理外部存儲以確保在sdcard(可用的大空間)上寫入,而不是在內部存儲器上寫入?
我已經試過這樣的事情:
File mnt = new File("/mnt");
File[] liste = mnt.listFiles();
boolean hassd2 = false;
for(File mount : liste) {
if(folder.getName().equals("sdcard2") {
hassd2 = true;
break;
}
}
String path = "";
if(hassd2) {
path = "/sdcard2/my/folder/"
} else {
File p = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/my/folder/");
path = p.toString();
}
它的工作,但僅與此特定的手機和其他人一個不帶SD卡插槽...