2012-11-28 30 views
0

如何從Java或本地代碼中枚舉安裝在Android手機上的所有SD卡?枚舉安裝在Android手機上的SD卡

+0

但是,您無法精確地讀取/ proc/mounts和過濾具有暗示可能是sdcards或類似的焊接存儲卷的特徵的事物。 –

回答

0

這不僅會列出掛載的SD卡,還會列出Android設備上的所有掛載的文件系統。

Runtime rt = Runtime.getRuntime(); 
Process proc = rt.exec("cat /proc/mounts"); 
BufferedReader stdInput = new BufferedReader(new 
    InputStreamReader(proc.getInputStream())); 
BufferedReader stdError = new BufferedReader(new 
    InputStreamReader(proc.getErrorStream())); 
// read the output from the command 
while ((s = stdInput.readLine()) != null) { 
    System.out.println(s); 
} 
+2

當您只需從java或本機代碼讀取/ proc/mounts作爲文件時,沒有理由將mount命令作爲獨特的可執行文件運行(強烈不鼓勵)。 –

+0

這似乎工作,除了我從/ proc/mounts讀取多個路徑指向相同的物理存儲,我沒有找到方法如何確定這些路徑指的是同一個存儲。 – user1744147

+0

@ user1744147您必須根據需要解析輸出。 –