android设备应用读取外接U盘设备方法

原创 2013年12月06日 10:08:13

废话不多说,上正文,由于现在android移植到各种平台上,很多android设备都可以支持U盘,但android API目前只有SD卡的获取,没有U盘的获取,支持U盘的设备也是各个厂商自己折腾,不经相同,因此需要找个折中的办法去解决;

不管各个厂商怎么实现U盘的挂载,但基本上都是挂在到/mnt目录下,那么现在关键就是怎么获取U盘到底挂载到/mnt下的哪个目录,但前提是需要知道U盘现在是否已经挂在;我们分两步说:1.检测U盘是否已经挂在;2.获取U盘挂载路径,3.........都知道挂载路径了,读文件写文件浏览等等不需要说了;

1.检测U盘是否挂载,可以直接读取实时/proc/partitions文件获取,至于为什么,看代码可知;

File Usbfile = new File("/proc/partitions");
		if (Usbfile.exists())
		{
			try
			{
				FileReader file = new FileReader("/proc/partitions");
				BufferedReader br = new BufferedReader(file);
				String strLine = "";
				while ((strLine = br.readLine()) != null)
				{
					if (strLine.indexOf("sd") > 0)
					{
						//已经挂载,不排除有多个哦,可以自己好好想想如何处理多个U盘检测
						break;
					}
				}
				br.close();
				file.close();
			} catch (Exception e)
			{
				e.printStackTrace();
			}
		}

2.获取U盘挂载路径,U盘、SD卡等外接存储设备的挂载,大部分都是在/system/etc/vold.fstab中指定了挂载路径,这么说就简单了吧;直接读取改文件,就可以知道U盘被挂载到哪个目录了,放心的是,基本上都再/mnt目录下,好了,至于读取代码嘛,看看上面第1点哦,至于多U盘挂载区分,都到这地步了,自己解决吧,so easy!

android 识别U盘以及读写文件

android中读写文件的需求地方很多,其中就包括了识别U盘,弹出U盘,读写U盘的文件等。 那么,如何实现这些需求呢?笔者简单的说下: 1.识别U盘: 识别U盘的方法只要是用到了2个andro...
  • gan303
  • gan303
  • 2016年08月29日 10:29
  • 7347

Android 获取外接储存的设备路径(如挂载的U盘)

插入U盘时获取U盘路径 开机时获取挂载U盘的路径
  • Zou_pl
  • Zou_pl
  • 2017年06月26日 20:05
  • 3580

Android OTG 读写U盘文件

最近项目需要做一个关于OTG的功能,其实也就使用到U盘的文件读取,一般这种需求是不需要的,因为大部分的系统都会自动挂载U盘,但是个别系统还是需要自己去实现,查了很多资料都没有找到一个完整的能用的例子,...
  • csdn635406113
  • csdn635406113
  • 2017年04月12日 18:29
  • 5852

Android实现识别/挂载U盘

关于U盘的挂载可以先看一下这篇文章http://blog.csdn.net/yimiyangguang1314/article/details/6298276,作者是将U盘直接挂载在SD卡下。我的机器...
  • goleftgoright
  • goleftgoright
  • 2012年09月24日 11:41
  • 24133

Android 4.4 U盘挂载

在Android4.4系统下,ES文件浏览器读取不到U盘,但是在设置->存储里面是可以看到U盘的,另外一块板子是4.2系统的,一切正常,用串口看了下发现 正常的板子,U盘挂在/mnt/udisk下,不...
  • mill_li
  • mill_li
  • 2015年12月01日 20:00
  • 3459

Android开发——遍历读写U盘、SD卡等外部存储

1.首先需要得到挂载在手机上的有哪些盘符 这里需要用到一个被系统隐藏的方法,即StorageManager下的getVolumePaths()方法。具体通过反射得到。方法返回值为字符串数组,在我的真...
  • SEU_Calvin
  • SEU_Calvin
  • 2016年07月15日 10:26
  • 17066

android下SD卡与U盘无读写权限问题的解决办法

今天在android4.2系统下使用SD卡,想顺便修改一个文件的名字,却发现无权限修改,接着换了U盘也是一样的问题。经过查看源码,发现把frameworks/base/data/etc/platfor...
  • bzw73
  • bzw73
  • 2013年10月23日 22:39
  • 3184

Android应用程序无法读写USB设备的解决方法

如果android系统中的API或者apk无法读写usb设备,可能是没有添加读写usb的权限,需要按照如下方法进行设置: 1. 在android.hardware.usb.host.xml文件中添加如...
  • wlwl0071986
  • wlwl0071986
  • 2015年06月03日 20:38
  • 2068

android检测U盘插拔事件

  • 2013年04月26日 17:05
  • 920KB
  • 下载

android-USB-OTG 外部设备通讯 USB插拔检测

android程序在运行期间,可以检测到外部设备(例如STM32设备,HID设备,U盘等)的插入、拔出事件,然后和外部设备通讯存取数据。 现已经实现功能需求。在此做个简单总结。 以下为USB设...
  • hetangbian
  • hetangbian
  • 2016年03月04日 13:19
  • 6220
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android设备应用读取外接U盘设备方法
举报原因:
原因补充:

(最多只允许输入30个字)