我开发了一个 Windows 8 应用程序,它使用后台任务来检索数据并激活动态磁贴功能。一切正常,但我需要转到应用程序设置并手动打开它才能使其正常工作。是否可以以编程方式请求用户激活?这是我的代码:
private void checkTaskRegistration()
{
bool isTaskRegistered = false;
foreach (var task in BackgroundTaskRegistration.AllTasks)
{
if (task.Value.Name == "TileUpdater")
{
isTaskRegistered = true;
break;
}
}
if (!isTaskRegistered)
{
registerBackgroundTask("TileUpdater", "BackgroundTasks.TileUpdaterBackgroundTask");
}
}
private void registerBackgroundTask(string name, string entrypoint)
{
BackgroundTaskBuilder btb = new BackgroundTaskBuilder();
btb.Name = name;
btb.TaskEntryPoint = entrypoint;
btb.SetTrigger(new TimeTrigger(15, false));
btb.AddCondition(new SystemCondition(SystemConditionType.InternetAvailable));
BackgroundTaskRegistration task = btb.Register();
}
首先我检查任务是否已经注册,如果不是我注册它。