我在应用程序中使用背景音乐,但我注意到,在我将我的android版本升级到棒棒糖5.0之后,背景音乐不是从第一个节拍开始的,音乐停止了500磨,然后重复。我相信问题是因为棒棒糖。知道怎么修吗?
public boolean playBackgroundMusic(int id){
loopMusic = MediaPlayer.create(context, id);
try {
loopMusic.prepare();
} catch (IllegalStateException | IOException e) {
e.printStackTrace();
}
loopMusic.setLooping(true);
loopMusic.start();
return loopMusic.isPlaying();
}发布于 2015-07-08 19:58:27
这很可能是由于MediaPlayer的缓冲机制发生了变化。MediaPlayer是一种流媒体播放器,它不一定将整个音频保存在内存中,在播放之前可能需要在后台缓冲该流。
如果您想要响应循环,您应该考虑使用SoundPool
从医生那里:
这允许应用程序..。在播放过程中不必承受CPU负载和解压缩的延迟。
发布于 2016-05-02 13:40:34
为什么不试试setNextMediaPlayer(mp)?呢?不要使用setLooping()。在MediaPlayer结束时,您需要创建一个方法来一次又一次地设置下一个MediaPlayer。
这为我解决了循环问题。希望能帮上忙。
https://stackoverflow.com/questions/31299581
复制相似问题