Android Kotlin - 监听耳机的插入和拔出

开发音乐应用时需要监听耳机的插入和拔出,用以调整音量或暂停播放。
采用注册广播的方式。

新建 HeadsetChangeReceiver 类

import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent/*** 耳机状态接收*/
class HeadsetChangeReceiver : BroadcastReceiver() {companion object {const val STATE = "state"}override fun onReceive(context: Context, intent: Intent) {if (intent.hasExtra(STATE)) {if (intent.getIntExtra(STATE, 0) == 0) {// 断开耳机// [ 逻辑代码 ]} else if (intent.getIntExtra(STATE, 0) == 1) {// 连接耳机// [ 逻辑代码 ]}}}}

在 Activity 中

private lateinit var headSetChangeReceiver: HeadsetChangeReceiver // 耳机广播接收
onCreate() 中添加
intentFilter = IntentFilter()
intentFilter.addAction("android.intent.action.HEADSET_PLUG")
headSetChangeReceiver = HeadsetChangeReceiver()
// 注册广播
registerReceiver(headSetChangeReceiver, intentFilter)
onDestroy() 中添加
// 解除
unregisterReceiver(headSetChangeReceiver)

Android Kotlin - 监听耳机的插入和拔出相关推荐

  1. Android实现检测耳机插入和拔出

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

  2. iOS 监听耳机插入和拔出[检索]

    iOS 监听耳机插入和拔出[检索] 使用通知的方式,添加收到通知的回调方法 [[NSNotificationCenter defaultCenter] addObserver:self selecto ...

  3. Android 监听SD卡插入与拔出

    Android 监听SD卡插入与拔出 简单记录一下Android 如何监听SD卡插入与拔出,注意事项: 继承广播: public class SdStatusReceiver extends Broa ...

  4. android-检测耳机的插入和拔出动作

    在android系统中,检测耳机的插入和拔出,也是通过广播实现的,可以建立一个Broadcast Receiver 监听"android.intent.action.HEADSET_PLUG ...

  5. Qt C++ 检测优盘插入或拔出

    概述 在开发文件浏览相关应用时,会涉及到动态检测优盘插入或拔出的状态,这样可以实时的刷新界面显示.这里通过调用windows的接口来实现该检测,代码很简单.我是在Qt工程中使用的,其核心代码是一样的. ...

  6. c# U盘禁用---守护进程(插入,拔出,卸载等操作)

    一.简介 传统的对U盘禁用,我们多采用修改注册表的方式,详情参考:https://blog.csdn.net/qq_25372599/article/details/79815407:本文将介绍一种其 ...

  7. WINDOWS检测U盘插入,拔出

    检测U盘的插入或拔出状态,然后根据状态做出相关操作. 检测U盘是否被插入是通过监听WM_DEVICECHANGE消息来实现的. 判断-U盘拔出和插入-获取它盘符 2010-05-04 10:59 加入 ...

  8. linux udev 检测u盘的插入和拔出,在Linux中C检测插入/拔出USB串行设备

    我需要检测何时在我的嵌入式系统上插入或拔出USB串行设备,并知道与之相关的tty是什么. 我的系统运行在2.6 Linux内核上. 由于我没有对udev规则的写访问权限,现在我正在尝试从文件系统获取此 ...

  9. USB设备插入和拔出的波形

    下面测试了iPhone和U盘插入/拔出时D+和D-上的波形.黄色为D+,绿色为D-. iPhone插入的波形 iPhone插入-整体波形 1 处的波形只有iPhone插入连接CarPlay或者是And ...

最新文章

  1. 每日一皮:好像有个Bug... 你看到了吗?
  2. 保鲜、保生,生鲜电商的两码事
  3. python3精要(10)-while,for
  4. Android小数和整数相互转换
  5. 关于scanf和的问题
  6. Qt文档阅读笔记-Advanced Signals and Slots Usage解析与实例
  7. iptables之NAT
  8. 【转载】JSON介绍
  9. iphone7测试软件,iPhone7如何测试网速 ping命令测试网速方法介绍
  10. sprintf函数打印数据不对_printf的归宿-数据打印到哪儿了
  11. angular2组件通讯
  12. 软件测试第四组第一周作业第一天
  13. markdown编辑器Typora的使用方法(保姆级教程)
  14. (SEED-Lab) DNS_Local Attack Lab
  15. mogo语句常用用法
  16. MATLAB读取excel表格中指定位置的数据
  17. element-ui表单下拉选项展示来自数据库的内容
  18. 使用FFmepg进行视频转码、视频格式转换、图片提取等!
  19. 第十四周 任务一
  20. 计算机模拟求解流体力学方程,基于CFD方法对圆盘空化器超空泡流动的数值模拟_计算流体力学-论文网...

热门文章

  1. 浅谈大数据风控平台的功能需求
  2. 弱校胡策 大逃亡(BFS灌水+二分答案)
  3. 【摘要】STC系列单片机ISP编程器/烧录器的说明
  4. win10关闭自动更新(针对已经关闭windows update项,但系统仍自动更新的问题)
  5. PPT之幻灯片中的大纲选项卡
  6. SVN管理文件的步骤
  7. Pycharm启动后总 indices... indexing的问题
  8. 操作系统 (二): 进程与线程
  9. 修改ftp服务器地址,ftp服务器的地址修改
  10. Oracle EBS 12.2.7系统克隆教程