android耳机插拔的监听
来源:互联网 发布:linux镜像下载 编辑:程序博客网 时间:2024/04/30 06:51
必须动态注册,否则无效监听
一、主要监听事件
1.监听有线耳机
Intent.ACTION_HEADSET_PLUG
android.intent.action.HEADSET_PLUG
2,监听蓝牙耳机
BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED
二、代码实现
/**注册receiver*/public class HeadSetActivity extends AppCompatActivity { private HeadSetReceiver mReceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_head_set); mReceiver = new HeadSetReceiver(); IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(Intent.ACTION_HEADSET_PLUG); intentFilter.addAction(BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED); registerReceiver(mReceiver, intentFilter); } @Override protected void onDestroy() { super.onDestroy(); /** 销毁receiver */ if (mReceiver != null) { unregisterReceiver(mReceiver); } }
/**receiver监听*/public class HeadSetReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED.equals(action)) { BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter(); if (BluetoothProfile.STATE_DISCONNECTED == adapter.getProfileConnectionState(BluetoothProfile.HEADSET)) { //Bluetooth headset is now disconnected } } else if ("android.intent.action.HEADSET_PLUG".equals(action)) { if (intent.hasExtra("state")){ if (intent.getIntExtra("state", 0) == 0){ Toast.makeText(context, "headset not connected", Toast.LENGTH_LONG).show(); } else if (intent.getIntExtra("state", 0) == 1){ Toast.makeText(context, "headset connected", Toast.LENGTH_LONG).show(); } } } }
0 0
- android耳机插拔的监听
- android 监听耳机插拔
- Android 耳机按键与拔插监听
- wangchenfeng android 监听耳机插拔
- Android如何监听蓝牙耳机和有线耳机的插拔
- 监听耳机拔插状态
- iOS 监听耳机插拔
- Android 多媒体控制 来电监听-耳机插拔监听-耳机按钮监听-MediaSession-MediaStyle
- android耳机插拔事件
- android 耳机插拔流程
- 关于Android耳机插拔的问题(ACTION_HEADSET_PLUG )
- Android的Usb设备的监听(Dev)外设端口的判定以及耳机的插拔
- Android的Usb设备的监听(Dev)外设端口的判定以及耳机的插拔
- ios监听输出设备变化(监听耳机插拔,蓝牙设备连接断开等)的实现
- android 耳机插拔检测(kernel)
- Android 耳机插拔处理流程
- 001 正式进入android分析hal层以上 apk监听耳机插拔事件
- iOS监听耳机插拔的不使用系统通知实现的一种方式
- Spring Util常量类调用Service
- 新机器开发环境搭建
- Flink学习记录(一)
- win10系统 微软输入法 于eclipse ctrl+shif+f冲突间接处理办法
- Namespace declaration statement has to be the very first statement in the script--ThinkPHP3.2.3
- android耳机插拔的监听
- PHP实现快速排序
- linux 大并发测试需要的系统修改
- java反射机制
- 每一行末尾添加分号
- Linux中source filename .(点)filename ./filename sh filename的区别
- 自定义数字滚动动画的TextView
- Android知识点目录
- 通过局域网对连接的Android设备进行调试