应用程序暂停时,对AudioPlayerAgent中的UserAction做出反应

时间:2012-12-19 08:57:14

标签: windows-phone-7 windows-phone-7.1 windows-phone-8 background-audio

我有一个使用BackgroundAudioPlayerAudioPlayerAgent的音频播放器。一切都运行正常,除了有一个用例我不知道如何处理。

如果我在我的应用程序中播放音轨,然后用户切换到另一个应用程序,音频轨道将继续在后台播放 - 但我想我的应用程序现在已经被交换到内存并被暂停。

我的问题是:如果用户现在开始在其他应用中播放音乐,我会将AudioPlayerAgent.UserAction.Stop操作作为对AudioAgent的回调。但是,从我的应用程序的角度来看,我现在可以对此做些什么吗?我的意思是,我想保存用户在我的应用程序中的音频播放位置,但我的应用程序已被暂停,对吧?

当我的应用程序位于前台并且音频停止时,我会收到BackgroundAudioPlayer.Instance.PlayerState.Stopped事件。在这里,我通常保存播放的位置。但如果用户切换到另一个应用程序播放音乐,我不会得到这个事件。

所以我只是想知道如何处理这种情况。我有什么办法可以改善用户体验吗?

1 个答案:

答案 0 :(得分:1)

唯一的方法是在代理商代码中将该职位保存到Isolated Storage

有关如何使用背景音频代理以及UI和代理端之间的通信方式,请参阅此very useful article of Paul