android 获取所有SD卡目录

Posted guangdeshishe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 获取所有SD卡目录相关的知识,希望对你有一定的参考价值。

//返回sd卡路径
public static List<String> getStorageDirectories(Context context) {
StorageManager sm = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE);
List<String> pathList = new ArrayList<>();
File exDirFile = Environment.getExternalStorageDirectory();
String externalStorageDir = "";
if (exDirFile != null) {
externalStorageDir = exDirFile.getAbsolutePath();
}
try {
String[] paths = (String[]) sm.getClass().getMethod("getVolumePaths", null).invoke(sm, null);
if (paths != null && paths.length > 0) {
for (String path : paths) {
File file = new File(path);
if (!TextUtils.isEmpty(path) && !path.equalsIgnoreCase(externalStorageDir) && file.isDirectory()) {
//判断是否目录,并排除系统虚拟出来的目录
pathList.add(path);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}

return pathList;
}

























以上是关于android 获取所有SD卡目录的主要内容,如果未能解决你的问题,请参考以下文章

Android判断是否存在外置SD卡(获取手机所有存储设备的路径)

Android--向SD卡读写数据

获取 Android 上的所有总空间和可用空间

Android获取外置SD卡读写路径

Android获取外置SD卡读写路径

android获取内置和外置SD卡路径 - z