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流音量调节。

相关推荐
王江奎8 小时前
FFmpeg 中编译和使用 soxr 重采样引擎
ffmpeg·音视频
冬奇Lab8 小时前
AudioRecord音频录制流程深度解析
android·音视频开发·源码阅读
枳实-叶9 小时前
基于 ALSA 实现录音保存为 WAV 文件
音视频
优选资源分享10 小时前
小丸工具箱 vR236|ffmpeg 图形化视频压制工具
ffmpeg·音视频
alexhilton11 小时前
Jetpack Compose中的富文本输入
android·kotlin·android jetpack
兄弟加油,别颓废了。11 小时前
ctf.show_web4
android
哔哔龙13 小时前
Android OpenCV 实战:图片轮廓提取与重叠轮廓合并处理
android·算法
tangweiguo0305198714 小时前
Android SSE 流式接收:从手写到框架的进阶之路
android
大尚来也15 小时前
PHP 反序列化漏洞深度解析:从原理利用到 allowed_classes 防御实战
android·开发语言·php
sp42a15 小时前
通过 RootEncoder 进行安卓直播 RTSP 推流
android·推流·rtsp