SystemMediaTransportControls在mytoolkit中以不同的模式错误初始化

时间:2016-01-19 09:52:21

标签: c# windows windows-phone-8.1 windows-8.1-universal mytoolkit

当我在后台音频播放器启动后运行mytoolkit时返回“SystemMediaTransportControls以不同模式初始化。请使用与该模式关联的API来完成此操作”例外。

var url = await MyToolkit.Multimedia.YouTube.GetVideoUriAsync(ID, MyToolkit.Multimedia.YouTubeQuality.Quality480P);

当背景音频播放器未启动时,它可以正常工作。请帮助我,我无法找到错误的位置,是否有任何解决方案......

2 个答案:

答案 0 :(得分:2)

您是否按照this guy为Windows 8执行的操作而不是8.1?

“不要使用MediaControl静态类为Windows 8.1应用程序附加处理程序,否则您将收到错误消息”

答案 1 :(得分:2)

在使用背景音频播放器的代码中

var systemMediaControls = SystemMediaTransportControls.GetForCurrentView();
            systemMediaControls.ButtonPressed += systemMediaControls_ButtonPressed;
            systemMediaControls.IsPlayEnabled = true;
            systemMediaControls.IsPauseEnabled = true;
            systemMediaControls.IsNextEnabled = true;
            systemMediaControls.IsPreviousEnabled = true;

async void systemMediaControls_ButtonPressed(SystemMediaTransportControls sender, SystemMediaTransportControlsButtonPressedEventArgs args)
    {
        switch (args.Button)
        {
            case SystemMediaTransportControlsButton.Play:
            break;
        }
    }

而不是

MediaControl.PlayPressed += MediaControl_PlayPressed;
             MediaControl.PausePressed += MediaControl_PausePressed;

控制。 我认为这会对你有所帮助..