前言
记录一下监听U盘挂载和卸载的方法。
记录于此,方便自己差异。
正文
这里介绍目前知道的且测试ok的方式,看源码很多,但部分没通过测试。
下面主要是2种方式,一个是广播,一个是registerStorageVolumeCallback()。
registerStorageVolumeCallback
这个是Android R (Android 11)开始有的方式。
日志打印
日志打印比较多,这里截取一部分
# 挂载 onStateChanged getState : mounted onStateChanged getUuid : 5055-B658 onStateChanged getMediaStoreVolumeName : 5055-b658 onStateChanged getDirectory : /storage/udisk3 onStateChanged getStorageUuid : null # 卸载 onStateChanged getState : ejecting onStateChanged getUuid : 5055-B658 onStateChanged getMediaStoreVolumeName : 5055-b658 onStateChanged getDirectory : null onStateChanged getStorageUuid : null
参考文章
历史上的今天
暂无评论...
随机推荐
Android系统SystemProperties属性的简介
前言在Android项目中,需要各个APP相互交互有时候需要共享数据和状态,因此经常会使用ContentProvider、AIDL和SystemProperties等等。在上面几个中SystemProperties是最简单的一种方式。但是这个只能在系统应用中调用,因为SystemProper...
[代码片段]通过pinyin4j实现汉字转拼音
前言代码功能:主要是汉字转拼音,支持全拼音转换以及去除空格正文言归正传,直接上附上代码隐藏内容!付费阅读后才能查看!¥2 ¥3多个隐藏块只需支付一次付费阅读参考文章《Java通过pinyin4j实现汉字转拼音》《探索PinYin4j.jar将汉字转换为拼音的基本用法》《中文汉字和...
ViewPager2事件冲突问题
前言项目中用ViewPager2+Fragment替换ViewPager+Fragment做图片浏览功能,替换完后发现ViewPager2和Fragment中存在事件冲突,比如Fragment存在对图片进双指缩放等处理。因此,需要我们自己处理冲突事件。正文思路:重写mAnimViewP...
Lambda编程简介
前言简单记录一下Lambda编程相关知识,方便自己查阅和学习。这里重点是理解lambda作为函数参数的使用。正文Lambda表达式Lambda表达式就是一个匿名函数,它是函数式编程的基础,所谓函数式编程实际上就是一种编程范式,即如何编写程序的方法论。函数式编程的思想是将计算机运算视为函数...
Ubuntu18编译FFmpeg笔记
前言系统版本 :Ubuntu 18FFmpeg版本 : ffmpeg version N-102948-g79ebdbb9b9(下载最新的,这是编译后的版本信息)最近有看就整理了一下自己编译ffmpeg的编译过程,方便自己查阅。正文下面就记录编译的过程用的编译脚本以及所遇到的问题。ND...
丰子恺:人生三十即是秋
我的年岁上冠用了“三十”二字,至今已两年了。不解达观的我,从这两个字上受到了不少的暗示与影响。虽然明明觉得自己的体格与精力比二十九岁时全然没有什么差异。但“三十”这一个观念笼在头上,犹之张了一顶阳伞,使我的全身蒙了一个暗淡色的阴影,又仿佛在日历上撕过了立秋的一页以后,虽然太阳的炎威依然没有减却,...