我的Android应用程序创建一个MediaPlayer()并播放循环歌曲。当用户离开应用程序时,我需要让它停止播放。我还需要以某种方式获取音量按钮,让用户调整歌曲音量...任何想法?
MediaPlayer mp;
public void setupMediaPlayer()
{
mp = MediaPlayer.create(context, R.raw.song);
mp.setLooping(true);
mp.start();
}
public void stopMediaPlayer()
{
mp.stop();
}
答案 0 :(得分:3)
根据问题的前半部分:如果您在stopMediaPlayer()
和onPause()
内拨打onDestroy()
,则应该得到您想要的内容。例如:
@Override
protected void onPause() {
super.onPause();
stopMediaPlayer();
}
下半场:尝试查看AudioManager课程(特别是AUDIO_FOCUS_GAIN),看看是否可以处理您正在寻找的内容。
确保循环音频在应用程序的上下文中是有意义的,但是......如果有一件事我不会错过90年代中期的业余网站那么可怕的MIDI背景音乐,每个人似乎都放了在他们......
答案 1 :(得分:1)
还要考虑onResume(),在用户回到你的应用程序时继续你的循环歌曲。
答案 2 :(得分:1)
stopMediaPlayer并不适合我,因为根据eldarerathis'回答但是这样做了:
@Override
protected void onPause() {
super.onPause();
releaseMediaPlayer();
}
不知道为什么......
编辑:
根据我所做的课程虽然this是正确的做法。
也许有一天我会弄明白差异。 :)