2012-11-28 95 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您必须根据需要解析输出。 –