Tag: android audiomanager

Android:MediaPlayer AUDIOFOCUS_LOSS和setOnErrorListener()问题

我正在创建一个音乐播放器应用程序。 在那我正在检查我的应用程序是否失去AudioFocus然后播放将停止。 但这引发了一个问题,当我播放一首曲目 – 然后停止它 – 然后再次播放曲目时, switch case AudioManager.AUDIOFOCUS_LOSS正在调用,其中我已经停止播放器,因为它正在失去焦点。 所以我自己的应用正在失去对自己的关注。 显然,这些不是我的意图。 当其他一些音乐播放器请求关注时我希望它被调用。 private OnAudioFocusChangeListener focusChangeListener = new OnAudioFocusChangeListener() { @Override public void onAudioFocusChange(int focusChange) { switch (focusChange) { case AudioManager.AUDIOFOCUS_LOSS: if (mPlayer.isPlaying()) { stopPlayback(); } break; case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT: if (mPlayer.isPlaying()) { mPlayer.pause(); } break; case AudioManager.AUDIOFOCUS_GAIN: if (!mPlayer.isPlaying()) { initiatePlayback(); } break; } } […]