0

我有一个媒体应用程序需要在动态磁贴上显示轨道图像和标题。现在我有以下代码: -

private void SetLiveTile()
    {
        var LiveTile = @"<tile>
                            <visual version=""1"">
                              <binding template=""TileWideSmallImageAndText01"">
                                <text id=""1"">" + MediaControl.ArtistName + " - " + MediaControl.TrackName + @"</text>
                                <image id=""1"" src=" + MediaControl.AlbumArt + @"""/>
                              </binding>
                              <binding template=""TileSquarePeekImageAndText02"">
                                <text id=""1"">" + MediaControl.ArtistName + " - " + MediaControl.TrackName + @"</text>
                                <image id=""1"" src=" + MediaControl.AlbumArt + @"""/>
                              </binding>
                            </visual>
                          </tile>";

        XmlDocument tileXml = new XmlDocument();
        tileXml.LoadXml(LiveTile);

        var tileNotification = new Windows.UI.Notifications.TileNotification(tileXml);
        Windows.UI.Notifications.TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);
    }

它目前不起作用,LoadXml 失败,错误代码为 c00ce502。

我还需要它至少每 1 分钟更新一次,但如果我能每 30 秒更新一次它会很棒。它还需要在关闭应用程序时移除动态磁贴并恢复到原始磁贴。

4

1 回答 1

1

对于 XML 问题,您似乎缺少src标签中的开头引号,请尝试

 <image id=""1"" src=""" + MediaControl.AlbumArt + @"""/>

至于每分钟或 30 秒的更新,请查看dev.windows.com 上的此示例

在终止时清除磁贴可能会很棘手,因为您不会以编程方式通知应用程序确实终止的所有情况。

于 2013-05-13T05:42:26.083 回答