android 音量键调节无效问题

在写我们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

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注