在我的onCreate方法中,我检查媒体播放器是否正在播放以及是否关闭它
if(mediaplayer.isPlaying()==false)
try {
playAudio(path);
} catch (Exception e) {
e.printStackTrace();
}else{
mediaplayer.stop();
mediaplayer.reset();
}
primarySeekBarProgressUpdater();
}
我的播放音频方法是
private void playAudio(String url) throws Exception{
mediaplayer.setDataSource(url);
mediaplayer.prepare();
mediaplayer.start();
}
我还在onCreate方法之前初始化我的媒体播放器。问题是我的媒体播放器不会关闭,而当用户点击列表视图类中的新歌时,它会创建此类,并在旧的播放器同时播放这两个媒体播放器。
答案 0 :(得分:0)
好的,所以我假设你有一个充满歌曲的ListActivity
,并且用户点击其中任何一个,它将移动到新的Activity
播放歌曲,其中歌曲信息通过Intent
传递。
首先,您需要阅读并记住Activity Lifecycle
:http://developer.android.com/reference/android/app/Activity.html
其次,针对您的问题,根据生命周期,每次用户点击列表中的某首歌曲,然后它会创建一个新的Activity
来播放该歌曲,这意味着它会创建一个新的{{1}对象也是。因此,您可以看到许多歌曲与您从列表中选择歌曲一样多。
您需要做的是在关闭音乐播放屏幕时处理MediaPlayer
对象以返回到您的歌曲列表。
MediaPlayer