【发布时间】:2015-05-29 15:12:38
【问题描述】:
我阅读了this关于“如何在后台播放音频 (XAML)”的文章并且工作正常,我播放了我的 mp3 文件,但如果我尝试从应用程序中退出音乐就会停止,我认为“背景音频" 即使应用程序没有聚焦在屏幕上也可以播放!
XAML
<Grid>
<MediaElement x:Name="musicPlayer"
Source="Assets/VIGEVANO.mp3"
AudioCategory="BackgroundCapableMedia"
CurrentStateChanged="MusicPlayer_CurrentStateChanged" />
</Grid>
CS
SystemMediaTransportControls systemControls;
public MainPage()
{
this.InitializeComponent();
this.NavigationCacheMode = NavigationCacheMode.Required;
// Hook up app to system transport controls.
systemControls = SystemMediaTransportControls.GetForCurrentView();
systemControls.ButtonPressed += SystemControls_ButtonPressed;
// Register to handle the following system transpot control buttons.
systemControls.IsPlayEnabled = true;
systemControls.IsPauseEnabled = true;
}
private void SystemControls_ButtonPressed(SystemMediaTransportControls sender, SystemMediaTransportControlsButtonPressedEventArgs args)
{
switch (args.Button)
{
case SystemMediaTransportControlsButton.Play:
PlayMedia();
break;
case SystemMediaTransportControlsButton.Pause:
PauseMedia();
break;
default:
break;
}
}
async void PlayMedia()
{
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
musicPlayer.Play();
});
}
async void PauseMedia()
{
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
musicPlayer.Pause();
});
}
我想念什么?
【问题讨论】:
-
自从我上次使用该示例以来,您是否在代码中注册了事件,如示例中所示,它运行良好
-
是的,但我不知道为什么不工作.. 你有关于这个的其他链接吗?
-
通常它会询问您是否要允许您的应用程序在开始时在后台运行,您应该接受它。尝试在您的测试设备中卸载并重新安装生成的解决方案
-
code.msdn.microsoft.com/windowsapps/… 下载并运行这个示例,看看它是否工作
-
@Jerin 如果转到我的桌面音频停止播放!
标签: c# windows-phone-8.1