安卓媒体播放器在退出时崩溃



我遇到的问题是,当我在可互换加载多个音频文件的活动中使用MediaPlayer版本时,它可以正常工作。但是,当我退出活动并调用release[通过onPause((]时。它马上就崩溃了。我试过在类似的帖子下搜索,但没有找到确切的答案,所以在这里发布。代码如下:

public void closeMediaPlayer()   {
if (mp != null && mp.isPlaying()) {
mp.stop();
mp.reset();
}
}
public void releaseMediaPlayer() {
if (mp != null) {
mp.release(); // crashes on exit
mp = null;
}
}
public void instantiateMediaPlayer(int resId) {
closeMediaPlayer();
releaseMediaPlayer(); // works fine here
if (mp == null) {
mp = MediaPlayer.create(getApplicationContext(), resId); //resId points to the mp3 audio file
}
}
public void onPause() {
closeMediaPlayer();
releaseMediaPlayer(); // crashes here
super.onPause();
}

我正在我的setOnClickListener((处理程序中调用mp.start((。我目前正在安卓工作室下进行开发和调试

在我的run((处理程序中,我正在执行以下操作:

mp.getCurrentPosition();

这就是崩溃的原因,因为我在发布后访问了mp。我现在已经把它放在了警戒之下,一切都很好。的发布没有任何问题

最新更新