电脑重启后,w8 metro live tile不会动画

时间:2013-01-05 16:01:11

标签: c# microsoft-metro live-tile

我有一个Windows 8 metro应用程序,可以在每分钟刷新的实时磁贴上显示数据。

启动metro应用程序时,会创建一个序列来执行磁贴更新。这非常有效。

问题:

当我重新启动计算机时,地铁磁贴停止工作。相反,它会返回到默认的地铁图块(应用程序名称左下图像中间)。

我可以通过简单地启动和停止Metro应用程序再次使用它。但我不想这样做。

我实现了一个实现IBackgroundTask的类并实现了run方法。

public void Run(IBackgroundTaskInstance taskInstance){
    BackgroundTaskDeferral deferral = taskInstance.GetDeferral();
    TileScheduler.CreateSchedule();
    deferral.Complete();
}

在metro应用程序包清单中添加了声明“后台任务”并在入口点下指向此类。我还注册了计时器和系统事件。

这个类代码基本上调用了主应用程序第一次设置切片序列时所执行的相同代码路径,除了它是用延迟包装的。

问题 这是正确的道路(因为它似乎没有工作,所以我猜我的实现是错误的)?或者有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

这可能仅仅是“你不能用模拟程序做到这一点”。我假设您是通过在visual studio中使用开发人员许可证运行应用程序来实现此目的的。我对瓷砖更新的工作原理有所了解(如果我错了,请纠正我),但瓷砖会调查网站以显示下一个项目。由于你已经弹回你的盒子,任何视觉工作室的旋转服务,如ASP.net主机等都不会运行,因此磁贴将无法获得新的更新。

如果要在部署到商店之前测试功能,我建议在项目中将Web服务部署到IIS而不是测试环境,并将IIS配置为在启动时托管该服务。