android 获取外置sd卡根目录

Android获取外部SDcard的官方调用是
Environment.getExternalStorageDirectory()

但是根据不同机型,是有不同的结果的。

通过 android 的api可以获取系统内置的sdcard存贮目录,但是有些机器本身具有内置的sdcard存贮卡又可以外置SD卡,这样通过系统api获取的路径就只能是内置存贮卡目录,有些手机可能有两个存贮目录mnt/sdcard/     mnt/extsdcard或者storage/sdcard0    storage/extsdcard

so:

通过如下方式获得

try {
			Runtime runtime = Runtime.getRuntime();
			Process proc = runtime.exec("mount");
			InputStream is = proc.getInputStream();
			InputStreamReader isr = new InputStreamReader(is);
			String line;
			String mount = new String();
			BufferedReader br = new BufferedReader(isr);
			while ((line = br.readLine()) != null) {
				if (line.contains("secure")) continue;
				if (line.contains("asec")) continue;
				
				if (line.contains("fat")) {
					String columns[] = line.split(" ");
					if (columns != null && columns.length > 1) {
						mount = mount.concat("*" + columns[1] + "\n");
					}
				} else if (line.contains("fuse")) {
					String columns[] = line.split(" ");
					if (columns != null && columns.length > 1) {
						mount = mount.concat(columns[1] + "\n");
					}
				}
			}
			txtView.setText(mount);
			
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

发布了9 篇原创文章 · 获赞 3 · 访问量 2万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览