有一些用于将TileTask添加到ScheduledActionService的用法,但我并不了解哪一个是最佳用法。例如;
private void StartPeriodicAgent(string taskName)
{
tilePeriodicTask = ScheduledActionService.Find(taskName) as PeriodicTask;
if (tilePeriodicTask != null)
{
RemoveAgent(taskName);
}
tilePeriodicTask = new PeriodicTask(taskName);
tilePeriodicTask.Description = "App Tile Agent";
try
{
ScheduledActionService.Add(tilePeriodicTask);
// If debugging is enabled, use LaunchForTest to launch the agent in one minute.
#if(DEBUG)
ScheduledActionService.LaunchForTest(taskName, TimeSpan.FromSeconds(30));
#endif
}
catch (InvalidOperationException)
{
//MessageBox.Show(ex.ToString());
}
catch (SchedulerServiceException)
{
}
}
此方法删除现有的tileTask并每次都添加。这是真的吗?我是否每次使用都会删除并重新添加?或者,如果它存在,我不应该删除它吗?
感谢。
答案 0 :(得分:0)
在我使用LiveTiles的所有应用程序中,我使用了Microsoft提供的用于处理tile的示例。在该示例中,他们在重新创建之前删除现有的任务代理,就像上面的代码一样。我会这样做的。
我意识到微软提供的示例完全违反了公认的最佳做法,但在这种情况下,我认为样本是正确的(因此,您的代码)。
我希望这有助于让您放心。