android audio不同音频流,(八)music流音量APK按键调整
(1)apk通过,dispatchKeyEvent()函数监测按键事件:
//apk onCreate()初始化mAudioManager:
mAudioManager = (AudioManager) this.getSystemService(this.AUDIO_SERVICE);
apk接收到按键事件,执行如下处理,调用AudioManager对象函数处理:
@Override
public boolean dispatchKeyEvent(@NonNull KeyEvent keyEvent){
final int keyCode = keyEvent.getKeyCode();
switch(keyCode){
case KeyEvent.KEYCODE_VOLUME_UP:
if (keyEvent.getAction() == KeyEvent.ACTION_DOWN) {
mAudioManager.adjustVolume(AudioManager.ADJUST_RAISE ,0);
}
break;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (keyEvent.getAction() == KeyEvent.ACTION_DOWN) {
mAudioManager.adjustVolume(AudioManager.ADJUST_LOWER ,0);
}
break;
}
return true;
}
(2)AudioManager对象类文件:
文件路径:
frameworks/base/media/java/android/media/AudioManager.java
AudioManager类,音量调节函数:
public void adjustVolume(int direction, int flags) {
MediaSessionLegacyHelper helper = MediaSessionLegacyHelper.getHelper(getContext());
helper.sendAdjustVolumeBy(USE_DEFAULT_STREAM_TYPE, direction, flags);
}
apk通过监测按键事件,再调用AudioManager函数接口,调节STREAM_MUSIC流音量调节。
原文地址:https://blog.csdn.net/xuann/article/details/140657966
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!