胶南市场建设服务中心网站/东莞网站seo公司哪家大
前面已经介绍了音频焦点的基础,现在我们直接看一下获取、监听和释放音频焦点的相关代码。
一、APP处理音频焦点
1、获取音频焦点
AudioManager audioManager = (AudioManager) Context.getSystemService(Context.AUDIO_SERVICE);
playbackAttributes = new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_GAME).setContentType(AudioAttributes.CONTENT_TYPE_MUSIC).build();
focusRequest = new AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN).setAudioAttributes(playbackAttributes).setAcceptsDelayedFocusGain(true).setOnAudioFocusChangeListener(afChangeListener, handler).build();
mediaPlayer = new MediaPlayer();
final Object focusLock = new Object();
boolean playbackDelayed = false;
boolean playbackNowAuthorized = false;
……
int res = audioManager.requestAudioFocus(focusRequest);
synchronized(focusLock) {if (res == AudioManager.AUDIOFOCUS_REQUEST_FAILED) {//请求焦点失败--