在写我们app的时候,app里面用到了科大讯飞的语音识别,在读语音的时候按了音量键,
第一是音量键的进度条不显示;第二是音量调节无法控制,是失效的,虽然按下按键的时候也会有音量键的声音。如图所示:左图异常,右图正常。
原因是Activity里面重写了onKeyDown方法,未对音量键进行监听。
解决方法:在onKeyDown()里面加入以下代码
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); switch (keyCode) { case KeyEvent.KEYCODE_VOLUME_UP: audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE,AudioManager.FX_FOCUS_NAVIGATION_UP); return true; case KeyEvent.KEYCODE_VOLUME_DOWN: audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER,AudioManager.FX_FOCUS_NAVIGATION_UP); return true; } return true; }
到此音量调节键也就显示了,app就可以自由调节音量大小了。
参考于:https://blog.csdn.net/u013144287/article/details/80523496