歌曲更改时更新 LiveTile
Posted
技术标签:
【中文标题】歌曲更改时更新 LiveTile【英文标题】:Update LiveTile when Song Changes 【发布时间】:2014-09-18 22:33:47 【问题描述】:基本上,我正在使用这个示例。
http://social.msdn.microsoft.com/Forums/en-US/43295c90-43e8-4b08-8a25-958a1c3d0a0b/explanation-on-windowsuixamlmediaxamlrenderingbackgroundtask
一个 XAMLrenderingBackgroundTask 使用专辑封面、文本等更新我的实时磁贴。效果很好 - 但是当歌曲更改时我无法让它运行。我不知道如何在歌曲更改时触发此任务。
我有一个单独的 BackgroundTask,它持续运行并接收歌曲更改等事件。但我不知道如何自己触发此 XAMLrenderingBackgroundTask 而无需添加系统时间更改等触发器。它必须是可能的,当歌曲发生变化时,我看到其他应用程序会更新磁贴上的图像。
我尝试使用 Media BackgroundTask 实现 XAMLrenderingBGTask,并尝试在媒体更改时更新活动磁贴,但由于从另一个线程编组的某些调用而崩溃,这是我所预料的。
现在我被困住了。这是我的媒体播放器的后台任务,MediaOpened 事件应该触发新歌曲的磁贴更改,但我不能..
public sealed class BackgroundAudioTask : IBackgroundTask
public void Run(IBackgroundTaskInstance taskInstance)
systemmediatransportcontrol = SystemMediaTransportControls.GetForCurrentView();
systemmediatransportcontrol.ButtonPressed += systemmediatransportcontrol_ButtonPressed;
systemmediatransportcontrol.PropertyChanged += systemmediatransportcontrol_PropertyChanged;
systemmediatransportcontrol.IsEnabled = true;
systemmediatransportcontrol.IsPauseEnabled = true;
systemmediatransportcontrol.IsPlayEnabled = true;
systemmediatransportcontrol.IsNextEnabled = true;
systemmediatransportcontrol.IsPreviousEnabled = true;
systemmediatransportcontrol.IsFastForwardEnabled = true;
systemmediatransportcontrol.IsRewindEnabled = true;
//Add handlers for MediaPlayer
BackgroundMediaPlayer.Current.CurrentStateChanged += Current_CurrentStateChanged;
BackgroundMediaPlayer.Current.MediaOpened += MediaPlayer_MediaOpened;
BackgroundMediaPlayer.Current.MediaEnded += MediaPlayer_MediaEnded;
BackgroundMediaPlayer.Current.MediaFailed += mediaPlayer_MediaFailed;
BackgroundMediaPlayer.Current.VolumeChanged += Current_VolumeChanged;
BackgroundTaskStarted.Set();
backgroundtaskrunning = true;
【问题讨论】:
【参考方案1】:我知道有点晚了 :D 您可以使用This 更新磁贴。 场景2我认为可以帮助你。 在 MediaOpened 事件中,您可以更新磁贴
【讨论】:
以上是关于歌曲更改时更新 LiveTile的主要内容,如果未能解决你的问题,请参考以下文章