Android 获取所有外部存储路径

StorageManager sm = (StorageManager)
   this.getSystemService(Context.STORAGE_SERVICE);
// 获取sdcard的路径:外置和内置
String[] paths=null;
try {
  paths = (String[]) sm.getClass().getMethod("getVolumePaths", null).invoke(sm, null);
} catch (IllegalAccessException e) {
  // TODO Auto-generated catch block
 e.printStackTrace();
} catch (IllegalArgumentException e) {
  // TODO Auto-generated catch block
    e.printStackTrace();
} catch (InvocationTargetException e) {
 // TODO Auto-generated catch block
    e.printStackTrace();
} catch (NoSuchMethodException e) {
  // TODO Auto-generated catch block
   e.printStackTrace();
}
 for(int i=0;i<paths.length;i++){
  Log.i("ScanActivity",paths[i]);
}