Android8.0监听U盘插入拔出事件
静态注册
新建UsbBroadcast继承BroadcastReceiver,然后重新onReceive方法
public class UsbBroadcast extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {switch (intent.getAction()) {case Intent.ACTION_MEDIA_MOUNTED: {break;}case Intent.ACTION_MEDIA_UNMOUNTED: {break;}default:break;}}}
在AndroidManifest.xml中注册我们定义的广播接收器
U盘插入和拔出广播为:
android.intent.action.MEDIA_MOUNTED
android.intent.action.MEDIA_UNMOUNTED
<receiver android:name=".broadcast.UsbBroadcast"><intent-filter><action android:name="android.intent.action.MEDIA_MOUNTED"/><action android:name="android.intent.action.MEDIA_UNMOUNTED"/><data android:scheme="file"/></intent-filter></receiver>
在上面的xml中,注意添加
<data android:scheme="file"/>
- 这时候插拔U盘我们的广播接收器就能够收到消息了
动态注册
- 跟静态注册的第一步相同,新建我们的广播接收器
在activity启动时进行动态注册广播
public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);UsbBroadcast usbBroadcast = new UsbBroadcast();IntentFilter usbFilter= new IntentFilter();usbFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);usbFilter.addAction(Intent.ACTION_MEDIA_REMOVED);usbFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);usbFilter.addDataScheme("file");registerReceiver(usbBroadcast,usbFilter);} }
接收广播
无法接收到广播的可能性
- 取消静态注册广播,改为使用动态注册广播
- 静态注册中,记得添加
<data android:scheme="file"/>
- 动态注册广播时,添加
usbFilter.addDataScheme("file");
获取U盘的各种信息
下一篇blog将描述如何获取U盘的各种信息,包括U盘名称、格式、剩余空间、挂载路径等
Android8.0监听U盘插入拔出事件相关推荐
- 监听U盘插入 拔出 消息,获得U盘盘符
目录 一.U盘插拔消息监听 1.顶层窗口监听WM_DEVICECHANGE消息 2.WM_DEVICECHANGE 详细参数描述
- JAVA实现监听U盘插入 扫描文件
JAVA实现监听U盘插入 想用Java实现监听USB端口是否有移动设备插入,然后操作移动设备内的文件.网站查找资料后发现有个jsr-80的项目,下面先介绍一下什么是JSR:JSR是Java Speci ...
- Android 监听SD卡插入与拔出
Android 监听SD卡插入与拔出 简单记录一下Android 如何监听SD卡插入与拔出,注意事项: 继承广播: public class SdStatusReceiver extends Broa ...
- Android 监听U盘OTG挂载状态
Android 监听U盘OTG挂载状态 本篇博客介绍下在Android系统中,如何监听和获取U盘OTG挂载状态 在Android中插入U盘时,系统会先准备U盘并检查是否有错误,检查完成后才会把U盘挂载 ...
- 安卓监听手机USB接口拔插警报广播
安卓监听手机USB接口拔插警报广播 很多场景我们都是需要监听手机拔插,手机都会自带一个广播去监听,我们手机充电,手机接入电脑的时候,一般都会有个小小的震动.在商场上,人多混杂,手机插在USB上,一旦有 ...
- C# 监听USB设备插拔动态(防多触发)
一:通过winform窗体WndProc 局限于窗体程序中,不推荐使用 //事件代码 private const int WM_DEVICECHANGE = 0x219; //设备改变 private ...
- Android 监听USB设备插拔事件
通过注册广播的方式监听USB设备 . 广播Action UsbManager.ACTION_USB_DEVICE_ATTACHED Usb设备插入或者挂载事件通知 UsbManager.ACTION_ ...
- android sim卡插拔广播,Android监听SIM卡插拔的方式
监听SIM卡是否可用 import android.app.Service; import android.content.BroadcastReceiver; import android.cont ...
- android 7.0 短信监控,Android 7.0 监听网络变化的示例代码
Android7.0前,Android系统前网络切换时,会发广播,业务只要监听广播即可. public class NetChangeReceiver extends BroadcastReceive ...
最新文章
- Decision stump、Bootstraping、bagging、boosting、Random Forest、Gradient Boosting
- 企业官网建设注重这四点错不了!
- apache配置文件httpd.conf----小白福利
- 【知识星球】为什么图像分类任务要从256*256中裁剪出224*224
- 数据结构-顺序查找和折半查找
- 每日一笑 | 程序员的日常,这也太真实了......
- codeforces1496 D. Let‘s Go Hiking(乱搞+讨论)
- [react] 在react中遍历的方法有哪些?它们有什么区别呢?
- 揭秘InputFormat:掌控Map Reduce任务执行的利器
- ‘gbk‘ codec can‘t decode byte 0xb9 in position 58: illegal multibyte sequence
- 如何使用MIME类型
- c语言盗取qq号程序,C++获取本机登陆过的QQ号码示例程序
- Firefox 火狐下自动刷新的插件 ReloadEvery
- Shapefile属性操作之删
- 攻防世界-mfw-(详细操作)做题笔记
- 使用USBCAN通讯(转载)
- iOS 第三方 汇总
- python外卖点餐系统毕业设计开题报告
- 【docker lnmp】 2、容器mysql 连接问题 getaddrinfo failed
- android 皮肤包换肤之Resources加载(一)
热门文章
- linux显卡透传,显卡虚拟化方案之GPU透传(二)理论基础篇
- java上课听不懂怎么办_如何快速渡过上课听不懂阶段?
- 三大检索工具(SCI、EI、ISTP)收录检索技巧及核心期刊投稿导引
- 彻底删除mysql服务(清理注册表)
- 计算机发展cpu元器件,cpu由什么组成(组成cpu的元器件包括什么)
- 收藏:PPT素材网站等大全
- 金蝶K3后台SQL修改总账供应链固定资产应收应付启用年份期间当前年份期间
- Android 将文字转换成图片并保存起来,搭建android开发环境实验报告
- 深度linux编程工具,Deepin Tool Kit(Dtk):构建深度样式应用程序的工具
- 中国联通大数据产品“沃指数”首发