最近因项目需求,需要在存储卡查找文件,经测试发现部分手机挂载路径查找不到,这里分享一个有效的方法。

/**

* 获取所有存储卡挂载路径

* @return

*/

public static ListgetMountPathList() {

ListpathList = new ArrayList();

final String cmd = "cat /proc/mounts";

Runtime run = Runtime.getRuntime();//取得当前JVM的运行时环境

try {

Process p = run.exec(cmd);//执行命令

BufferedInputStream inputStream = new BufferedInputStream(p.getInputStream());

BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));

String line;

while ((line = bufferedReader.readLine()) != null) {

// 获得命令执行后在控制台的输出信息

Logger.i(line);

//输出信息内容:  /data/media /storage/emulated/0 sdcardfs rw,nosuid,nodev,relatime,uid=1023,gid=1023 0 0

String[] temp = TextUtils.split(line, " ");

//分析内容可看出第二个空格后面是路径

String result = temp[1];

File file = new File(result);

//类型为目录、可读、可写,就算是一条挂载路径

if (file.isDirectory() && file.canRead() && file.canWrite()) {

Logger.d("add --> "+file.getAbsolutePath());

pathList.add(result);

}

// 检查命令是否执行失败

if (p.waitFor() != 0 && p.exitValue() == 1) {

// p.exitValue()==0表示正常结束,1:非正常结束

Logger.e("命令执行失败!");

}

}

bufferedReader.close();

inputStream.close();

} catch (Exception e) {

Logger.e(e.toString());

//命令执行异常,就添加默认的路径

pathList.add(Environment.getExternalStorageDirectory().getAbsolutePath());

}

return pathList;

}

android获取sd卡mount,Android如何获取所有存储卡挂载路径相关推荐

  1. android读写sd卡代码,android读写SD卡中的文件 demo

    有时,我们需要将更大的文件保存下来,就不能用手机内置的存储空间,毕竟是有限的,所以将文件保存在SD卡中. 要读写SD卡,首先要知道手机上是否有SD卡,且是否可读写 String str = " ...

  2. android 获取sd卡大小,Android 获取SD卡容量

    SD卡作为手机的扩展存储设备,在手机中充当硬盘角色,可以让我们手机存放更多的数据以及多媒体等大体积文件.因此查看SD卡的内存就跟我们查看硬盘的剩余空间一样,是我们经常操作的一件事,那么在Android ...

  3. android 获取sd卡目录失败_Android获取外置SD卡存储路径的方法

    在开发应用的过程中,经常会遇到需要获取设备存储路径的问题.而从网上看到的很多方法获取到的都是内置存储位置,并非外置SD卡路径,因此我推荐使用反射的机制来获取外置存储的路径. 通常,使用Environm ...

  4. android 获取sd卡目录失败_获取sd卡存储路径失败

    android新手,最近在学习 搜索sd卡上的所有txt文件并将其放入listview中显示,加载的过程中界面上会显示一个progress dialog.在之前的手机(Android5.0 andro ...

  5. android lua sd卡,记Android层执行Lua脚本的一次实践

    0. 前言 最近一直在写Lua脚本,有时候出了问题,不知道是Lua层的问题,还是上游的问题,不知道从何下手.于是我学习了一点C/C++和JNI,把整个解析Lua脚本包.执行Lua脚本的流程全部都读了一 ...

  6. android 输入法sd卡,如何android扫描SD卡列出大文件

    闲来无事,正好以前老碰到这个磁盘空间满的问题 背景 安卓手机用了一段时间之后经常就报磁盘空间不够了,当然可以用手机管家,或者缓存/应用清理工具释放空间,但是还是会有莫名其妙的空间不够:这是由安卓的属性 ...

  7. android扫描sd卡图片,Android SD卡 全盘文件扫描

    在开发的过程中,有时候会遇到需要读取多媒体文件的需求,面对这样的需求,通常我们有两种解决方案:自己扫描全盘文件,或者使用ContentResolver读取系统记录. 一般需求不是特别复杂的情况下,直接 ...

  8. android sd卡列目录文件_Android正确获取SD卡目录及使用SD卡目录

    此文乃是转载,原文在这里链接 SD卡作为手机的扩展存储设备,在手机中充当硬盘角色,可以让我们手机存放更多的数据以及多媒体等大体积文件.因此查看SD卡的内存就跟我们查看硬盘的剩余空间一样,是我们经常操作 ...

  9. Android实例]------获取sd卡图片显示出来

    [Android实例] 获取sd卡图片显示出来 ON 六 02 2012 IN ANDROID代码仓库, ANDROID项目代码 BY ANDROID智能手机 | 评论 package com.fil ...

最新文章

  1. 从一个数组中寻找出现奇数次的数字
  2. 006-spring cloud gateway-GatewayAutoConfiguration核心配置-GatewayProperties初始化加载、Route初始化加载...
  3. 是什么动词_【术语攻略】什么是及物动词?
  4. 找工作java还是python有用_你觉得学 Python 还是 Java 更好找工作?
  5. HashMap 散列初体验
  6. spring mvc 教程_Spring MVC开发–快速教程
  7. 【MATLAB】求点到多边形的最短距离
  8. 深度学习入门(一):LeNet-5教程与详解
  9. 【C++实现】HeadFirst策略模式设计模式
  10. popmenu 和popWindow
  11. 现行一级学科和二级学科目录(学位授予和人才培养学科目录)
  12. ASPJpeg和ASPUpload组件的一些属性和方法
  13. clojure-jack-in : error in process filter: open-network-stream: make client process failed: Connecti
  14. bittorrent下载_面向初学者的BitTorrent:如何开始下载Torrent
  15. download.php是什么文件,qmdownload是什么文件?
  16. 全基因组关联分析学习资料(GWAS tutorial)20210313更新版
  17. CHIL-SQL-UCASE() 函数
  18. oracle vba 数组_Excel VBA 连接各种数据库(二) VBA连接Oracle数据库
  19. 解决“此图片来自微信公众平台 未经允许不可引用”的方法
  20. 2020-02-10

热门文章

  1. 什么是大数据分析平台
  2. 通俗易懂的Monte Carlo积分方法(一)
  3. 银医 服务器虚拟化,长宁时报数字报刊平台-技术创新 需求驱动 信息化助力医院发展...
  4. linux常用ipc技术,LINUX系统编程之IPC
  5. ubuntu虚拟机进程被杀死_vmware虚拟机奔溃,如何抢救文件
  6. AcWing 852. spfa判断负环(spfa or bellman)
  7. 计算机编程的计算法,计算方法
  8. java中bitconverter_【Java】BitConverter(数字转字节数组工具类)
  9. $_SERVER['PHP_SELF']、$_SERVER['SCRIPT_NAME'] 与 $_SERVER['REQUEST_URI']三者的区别
  10. Azure China (5) 管理Azure China Powershell