我应该创建多少个MediaPlayer实例来播放音乐集



到目前为止我考虑过的想法:

  1. 当前播放的歌曲只有一首。对于下一首歌曲,每次都会创建一个新实例。尽管也需要调用prepare,我预计歌曲之间会有明显的差距。

  2. 每首歌曲一个MediaPlayer实例。不过可能有一百多首歌曲,我读到创建过多的MediaPlayer实例可能会导致问题。

  3. 我试图实现一些逻辑,为当前播放的歌曲以及下一首和上一首(总共三首(提供一个MediaPlayer实例。这比我预想的要复杂得多。

由于我几乎不是第一个为Android实现音乐播放器的人,我想问一下,有没有一种普遍推荐的方法来实现这一点?

拥有多个媒体播放器不是一个好主意。媒体播放器真的很难处理。一旦一个MediaPlayer离开你的视线(你失去了对它的引用(,它就会继续播放音乐,而杀死它的唯一方法就是杀死整个应用程序。这是一个非常糟糕的用户体验。通常推荐的方式是用一个MediaPlayer播放所有集合;曲目结束后,或者当你想跳到下一首歌时,你只需拨打:
mediaPlayer.stop() 
mediaPlayer.reset()
mediaPlayer.create()

调用此序列将从旧数据中清除MediaPlayer,并为其提供新数据,从而避免出现两个MediaPlayer重叠播放的问题。

如果你想让音乐在后台播放,你需要使用服务并将媒体播放器放在其中。

相关内容

  • 没有找到相关文章

最新更新