想知道关闭应用程序后如何播放下一首歌曲,就像播放整张CD或播放列表一样……
解决方法
媒体播放器只播放一个音轨.媒体播放器的作用是听取onCompletion事件并播放下一首曲目.
MediaPlayer绑定到进程,而不是活动,因此只要进程运行,它就会一直播放.活动可能会暂停或销毁,但这不会影响MediaPlayer使用的内部线程.
我正在构建一个学习Android的音频播放器,你可以看到播放音频文件here的服务
编辑
关于第一条评论:服务在后台运行并在“退出”应用程序后继续运行,因为服务和活动的生命周期不同.
为了播放下一首曲目,该服务在MediaPlayer上注册回调,以便在音频流完成时通知服务.当音频完成时,服务通过调用MediaPlayer.release()来清理MediaPlayer使用的资源,然后创建一个新的新媒体播放器,播放下一个音轨并注册自己,以便在该音频轨道时再次收到通知完成,无限广告:).
MediaPlayer类不了解播放列表,因此该服务负责在上一曲目完成后播放曲目.
在我创建的AudioPlayer服务中,一个活动将对AudioPlayer中的曲目进行排队,并且AudioPlayer负责按顺序播放它们.