android 耳机监听权限,android 耳机监听

news/2024/11/8 19:57:51/

1.判断耳机是否插入:

AudioManager的isWiredHeadsetOn()方法:

AudioManager localAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

localAudioManager.isWiredHeadsetOn()

如果插入了耳机,就返回true,否则false;

注意:要加个权限,不然一直是返回false。

2.实时监测耳机的插入拔出:

每当插入和拔出耳机时,系统都会发送Intent广播。

所以,只需要用一个receiver把这个广播intent(获取的action是:“android.intent.action.HEADSET_PLUG”)截获就好。

在Android下实现检测耳机插入和拔出,也即建立一个Broadcast Receiver,监听“android.intent.action.HEADSET_PLUG”广播

但直接在AndroidManifest.xml中添加一个标签,写入内存的方式是无效的。

如:

发现Receiver的onReceive事件永远不会被触发,解决方法就是手动编写代码注册该广播:

首先,创建一个BroadcastReceiver的子类,用于监听耳机插入和拔出:

public class HeadsetPlugReceiver extends BroadcastReceiver {

private static final String TAG = "HeadsetPlugReceive


http://www.ppmy.cn/news/172490.html

相关文章

JavaScript深度剖析之变量、函数提升:从表面到本质

JavaScript深度剖析之变量、函数提升:从表面到本质 前言 系列首发于公众号『前端进阶圈』,若不想错过更多精彩内容,请“星标”一下,敬请关注公众号最新消息。 想要彻底理解提升这篇文章,除非你已经理解了作用域、词法…

31:将文件间的编译依存关系降至最低

假设你对C程序的某个class实现文件做了些轻微修改,假如只改了private部分,然后,重新建置这个程序,你以为只需花数秒,但你会发现,整个世界都被重新编译和连接了。 上述问题出现在C并没有把“将接口从实现中…

javaweb课程设计——商城项目

前言: 👏作者简介:我是笑霸final,一名热爱技术的在校学生。 📝个人主页:个人主页1 || 笑霸final的主页2 📕系列专栏:项目专栏 📧如果文章知识点有错误的地方,…

【软件测试】白盒测试与黑盒测试

白盒测试与黑盒测试 黑盒测试优点等价类划分法边界值分析法错误推测法因果图判定表判定表例题 白盒测试介绍覆盖程度基本路径覆盖程序流程图简化成控制流图计算圈复杂度导出测试用例准备测试用例 例题1) 绘制控制流图2)列出所有决定及其条件分支3) 使用判…

基于SpringBoot的三层架构开发统一响应结果

说明:三层架构开发时目前开发的主流,我这里通过一个案例,来分析非三层架构开发的不利之处,以及三层架构开发的好处。 案例说明:打开员工信息页,页面要显示所有员工的信息;前端页面已提供&#…

手机上php视频格式怎么转成mp4,我想知道手机上用爱奇艺下的视频怎么转换成MP4格式...

最近不知道大家有没有在爱奇艺看中国新说唱啊?小编是这个节目的老粉丝了,从名字没改之前的第一季就开始看了,第一季确实让我喜欢上了这种风格的音乐,第二季开始之后虽然名字改了,但是内容还是没有变。感觉比之前更加的…

视频怎样转换html代码,超简单的视频格式转换方法,你会吗?

某些视频播放器下载下来的视频是特殊格式,必须在特定播放器中才能进行播放,太麻烦! 为了能够自由的看视频,小编特意研究了一下视频格式转换的方法,下面的方法你会吗? 一、CMD命令转换 具体步骤: 1、复制视频…

万能视频格式转换器 v 2018 全能版

万能视频格式转换器是一款强大的视频格式转换软件,支持多种视频格式的转换,这款软件可以拍摄你自己喜欢的DIY视频,也可以将RM、RMVB、AVI、WMV、MPG 、MPEG、FLV、3GP、MP4、SWF、ASF、DIVX、XVID、3GP2、FLV1、MPEG1、MPEG2、MPEG3、MPEG4、…