今天要用到检测耳机当前状态的功能,在网上查了半天发现全是耳机插拨动作的检测,不符合使用要求,因为我们是做手机的,手机第一次运行的时候如果不插耳机获取的状态就不对,废话不多说,下面是检测耳机当前状态的代码,注意:不是检测耳机插拨动作!!!
private static final String HEADSET_STATE_PATH = "/sys/class/switch/h2w/state"; //先定义一个常量,这个是耳机当前状态文件
//用读文件的方式读出状态码后做判断,很简单
char[] buffer = new char[1024];
try {
FileReader file = new FileReader(HEADSET_STATE_PATH);
int len = file.read(buffer, 0, 1024);
int newState = Integer.valueOf((new String(buffer, 0, len)).trim()); //newState 0:未播放耳机 1:插入耳机
} catch (FileNotFoundException e) {
Slog.w(TAG, "This kernel does not have wired headset support");
} catch (Exception e) {
Slog.e(TAG, "" , e);
}
分享到:
相关推荐
android 检测网络状态 android 检测网络状态
Android获取当前网络状态并检测网络的连接是wifi或是2g/3g
在Android开发中,如何检测USB(OTG)线状态
AudioManager就有这个方法: isWiredHeadsetOn();... 实时检测耳机插入和拔出: 每当插入和拔出耳机时,系统都会发送Intent广播, 所以,只需要用一个receiver把这个广播intent(获取的action是:“android.i
Android平台下,对普通耳机以及蓝牙耳机插拔状态的监控,代码中有做蓝牙耳机SCO通话建立
Android利用广播接收器检测用户是否插入耳机!
android 蓝牙 耳机 开发
android检测信号强度android检测信号强度android检测信号强度android检测信号强度android检测信号强度android检测信号强度
本程序能实时监听并检测Android蓝牙的连接状态,无论是通过界面上的switch按钮打开/关闭手机蓝牙,还是手动打开/关闭手机蓝牙,程序都能监听当前的状态
基于Android的电池状态检测APP,手机、平板等有充电回路的设备
主要介绍了Android广播接实现监听电话状态(电话的状态,拦截) 的相关资料,需要的朋友可以参考下
Android 华强北耳机公牛方案专用调节检测软件 BullSuper_1.0.11
Android 判断当前网络是否可用简单实例 用户手机当前网络可用:WIFI、2G/3G网络,用户打开与不打开网络,和是否可以用是两码事。可以使用指的是:用户... * 检测当的网络(WLAN、3G/2G)状态 * @param context Contex
Android Socket连接,包含心跳检测,断线重连,数据发送等等 博客地址:http://blog.csdn.net/yuzhiqiang_1993/article/details/78094909
实时监测网络状态及当前网络类型,NetworkUtils工具类中提供了检测网络状态的方法
Android网络检测+DialogFragment的使用 详情见: http://blog.csdn.net/hander_wei/article/details/23884001
VAD - 录音过程中,实时检测当前是否有人在讲话(语音活动检测,或者叫静音检测)。讲话时webRtcVad_Process返回true,不讲话时返回false。直接用android studio打开,编译后“喂喂”两下,看log即可。by tanyaping...
工程里面有俩包,分别用了两种方法检测U盘热插拔,但只有利用广播方式监听U盘热插拔这种方式有效。
主要介绍了android实现添加耳机状态图标的方法,较为详细的分析了Android实现添加耳机图标的原理与相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
android判断网络的状态断开与否.android判断网络的状态断开与否