如何更新其他应用程序创建的磁贴?

时间:2012-12-10 04:21:18

标签: windows-phone

我有两个app:一个UI用Create()创建一个tile,另一个代理用Update()更新tile。这两个功能在一个应用程序中运行良好,即。在UI中或两者都在代理中。但是如果我在UI中放置Create并在代理中放置Update(),则Update()无法找到Create()创建的tile。怎么了?感谢。

    private void Create()
    {
        ShellTile find = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("ID=shelltile"));
        StandardTileData date = new StandardTileData();
        date.Count = 10;
        if (find == null)
        {
            ShellTile.Create(new Uri("/MainPage.xaml?ID=shelltile", UriKind.Relative), date);
        }
    }
    private void Update()
    {
        ShellTile find = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("ID=shelltile"));
        if (find != null)
        {
            StandardTileData date = new StandardTileData();
            date.Title = "aaaaaaaaa";
            find.Update(date);
        }
    }

1 个答案:

答案 0 :(得分:1)

每个应用只能访问自己的磁贴。如果您想更新图块,则需要在同一个应用中制作background agent。 (注意background agent can't create tiles,这让我相信这不是你现在正在做的事情)