Android SD卡及U盘插拔状态监听和内容读取

本文介绍如何在Android应用中监听SD卡和U盘的插拔状态,并通过系统方法获取存储设备的内容。在有系统权限的情况下,使用反射实现监听和读取,尤其在处理NTFS格式U盘时的解决方案。
摘要由CSDN通过智能技术生成

本篇是通过系统方法来对sd卡及U盘插拔监听及数据获取,Android盒子端开发,有系统权限,当然,这个比较简单,知道具体方法,可以通过反射来实现。

先贴上效果图:

获取外置存储设备并监听插拔状态

获取文件内容

前言

先说需求,App在引导过程中,通过外置存储设备(U盘或者sd卡)上传指定的配置文件,开始我没打算用系统方法,网上看到 libaums 这个库文件,尝试使用了一下,但是最后发现它并不能友好的支持NTFS格式U盘,能监听到,但是好像没有办法获取到路径,最后看官方也说了不支持NTFS格式,最后索性直接使用系统方法,反正有权限,真的可以为所欲为

正文


可以看到系统设置里面,是能监听到ntfs格式u盘(Evan_zch)的,并且能获取U盘里面的文件,这样就好办了,挽起袖子直接开干。

1、页面定位

要查看具体某个功能的源码,可以通过界面定位,这样能更快的找到我们想要的代码。
通过执行下面代码,可以直接定位当前展示界面的包名和类名。

linux:

adb shell dumpsys activity | grep "mFocusedActivity"

windows:

adb shell dumpsys activity | findstr "mFocusedActivity"

执行结果:

此时可以定位到系统设置存储界面是StorageSettingsActivity,这个时候可以去 Android OS 这个网站搜索并查看相应的源码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值