我正在使用此代码来获取AudioFocus,并且它可以正常工作 Android音乐应用(预装的那个)
int result = audioManager.requestAudioFocus(meService, AudioManager.STREAM_MUSIC,AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
然而,当我使用此代码发布它时
audioManager.abandonAudioFocus(meService);
Android音乐应用(预装的应用)无法继续播放。
如果我使用AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK
它的工作原理
但Android音乐应用并未降低音量。
为什么Android音乐应用没有恢复播放?
即时通讯使用api8并使用onAudioFocusChange
答案 0 :(得分:0)
您应该在MediaPlay.onCompleteListener(){}
答案 1 :(得分:0)
在尝试了4名球员后,其中没有人正在躲避。我可能做错了什么,并希望看到。我回答我自己的问题,我们必须忍受这个。
答案 2 :(得分:0)
这种方式适合我。
public class HomeActivity extends Activity implements AudioManager.OnAudioFocusChangeListener {
// Other stuff
@Override
public void onAudioFocusChange(int focusChange) {
if (focusChange == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
Log.i("HomeActivity", "Audio focus granted.");
}else if (focusChange == AudioManager.AUDIOFOCUS_REQUEST_FAILED) {
Log.i("HomeActivity", "Audio focus failed.");
}
}
}
请求AudioFocus :
private void requestAudioFocus(){
AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
// Request audio focus for playback
am.requestAudioFocus(this,
// Use the music stream.
AudioManager.STREAM_MUSIC,
// Request permanent focus.
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
}
放弃AudioFocus :
private void abandonAudioFocus(){
AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
am.abandonAudioFocus(this);
}
希望这会对你有所帮助。