我正在开发Windows Phone应用程序,该程序在后台播放/流音乐。
为此,我尝试同时使用Microsoft.Phone.BackgroundAudio.BackgroundAudioPlayer和Microsoft.Xna.Framework.Media.MediaPlayer类。
在这两种情况下,一切都运行良好,所以我想知道这些方法的优点/缺点是什么,因为现在我无法确定哪种方法更好。
我在BackgroundAudioPlayer中唯一不喜欢的事情是,我需要为音频代理创建一个单独的项目,并担心要通过IsolatedStorage传输轨道信息。但是,既然我已经做到了。这算不上问题。
那么这两类之间还有其他区别吗?
最佳答案
这取决于您的程序。如果只想在使用程序时播放背景音乐,则应使用MediaPlayer。否则,在任何情况下都必须照顾BackgroundAudioPlayer。这也会使用户烦恼,他们也想在使用您的应用程序时听自己的音乐。
否则,如果您的背景音乐是该程序的主要目的,则用户希望启动您的音乐并切换到其他程序。然后它会继续播放,您可以在音量栏中控制音乐。这就是为什么您必须为BackgroundAudioPlayer创建后台任务。切换到其他程序时,主应用程序将以两种方式停止。
简而言之:游戏背景音乐永远不会在离开游戏后播放(使用MediaPlayer)-但是我从不希望我的音乐播放器在聆听音乐库的同时计数时间(使用BackgroundAudioPlayer)。