在后台模式下播放音乐:通用Windows平台应用

时间:2017-03-14 14:51:44

标签: uwp

我制作了一个通用Windows应用程序(使用html,js和css),用于播放来自网络托管的mp3文件的音乐。它使用html5音频控件播放文件。

一切都很好但是当我最小化应用程序时,音频会停止。

我在package.appxmanifest

中添加了这个
<Extensions>  
    <Extension Category="windows.backgroundTasks" EntryPoint="BackgroundAudioTask.MyBackgroundAudioTask">  
        <BackgroundTasks>  
            <Task Type="audio" />  
        </BackgroundTasks>  
    </Extension>  
</Extensions>  

这也是:

<Capabilities>
    <Capability Name="internetClient" />
    <uap3:Capability Name="backgroundMediaPlayback" />
</Capabilities>

但是相同......音频在最小化时停止

1 个答案:

答案 0 :(得分:0)

我认为您在这里错过的步骤是订阅SystemMediaTransportControls,因为您已编写HTML应用程序并正在使用音频元素。使用UWP MediaPlayer的应用程序会自动获得该集成。

文档和示例解释了这一关键要求。

请参阅MSDN“背景音频要求”: https://docs.microsoft.com/en-us/windows/uwp/audio-video-camera/background-audio

SystemMediaTransportControls示例将帮助您了解具体信息: https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/SystemMediaTransportControls

关键部分是启用播放/暂停:

systemMediaControls.isPlayEnabled = true;
systemMediaControls.isPauseEnabled = true;

并处理按钮按下事件:

 systemMediaControls.addEventListener("buttonpressed", systemMediaControlsButtonPressed, false);