android获取TF卡、U盘等扩展存储路径

/**
	 * 获取扩展存储路径,TF卡、U盘
	 */
	public static List<String> getExternalStorageDirectory() {
		List<String> list = new ArrayList<String>();
		try {
			Runtime runtime = Runtime.getRuntime();
			Process proc = runtime.exec("mount");
			InputStream is = proc.getInputStream();
			InputStreamReader isr = new InputStreamReader(is);
			String line;
			BufferedReader br = new BufferedReader(isr);
			while ((line = br.readLine()) != null) {
				if (line.contains("secure"))
					continue;
				if (line.contains("asec"))
					continue;
				String dir = new String();
				if (line.contains("fat")) {
					String columns[] = line.split(" ");
					if (columns != null && columns.length > 1) {
						dir = dir.concat(columns[1] + "\n");
					}
				} else if (line.contains("fuse")) {
					String columns[] = line.split(" ");
					if (columns != null && columns.length > 1) {
						dir = dir.concat(columns[1] + "\n");
					}
				}
				if (!"".equals(dir) && !list.contains(dir)
						&& !dir.contains("mnt")) {
					list.add(dir);
				}
			}
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return list;
	}
发布了22 篇原创文章 · 获赞 2 · 访问量 471

猜你喜欢

转载自blog.csdn.net/m0_37782318/article/details/105218474