【发布时间】:2014-08-01 03:52:40
【问题描述】:
这是我的场景:
我有一个从 20 秒开始倒计时的计时器。在 13 秒时,开始播放声音。在 0 秒时,我停止当前声音,加载新声音并播放新声音。声音结束后,我会加载上一个声音,将其设置为循环,然后启动它。
这是命中0秒的逻辑:
mp.stop();
mp = MediaPlayer.create(mActivity, R.raw.second_sound);
mp.start();
mp.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp = MediaPlayer.create(mActivity, R.raw.first_sound);
mp.setLooping(true);
mp.start();
}
});
一旦最后一个声音开始播放,调用 mp.release() 不会停止播放器。关于如何阻止玩家的任何想法?
注意:mp.release() 在我第一次开始播放和第二个声音期间有效,但在循环声音期间无效。
解决方案:我的全局 MediaPlayer 也被命名为“mp”。糟糕。
【问题讨论】:
标签: android android-mediaplayer