我的Windows 8应用程序中存在持续存在的问题。
我想注册一个像这样的BackGroundTask:
private void CheckTaskRegistration()
{
foreach (var task in BackgroundTaskRegistration.AllTasks)
{
Debug.WriteLine(task);
if (task.Value.Name == "CheckConTask")
{
isTaskRegistered = true;
break;
}
}
if (isTaskRegistered)
{
Debug.WriteLine("debug1");
}
else if (!isTaskRegistered)
{
BackgroundTaskBuilder btb = new BackgroundTaskBuilder();
btb.Name = "CheckConTask";
btb.TaskEntryPoint = "Btasks.CheckConTask";
BackgroundTaskRegistration task = btb.Register();
Debug.WriteLine("debug2");
}
}
每次我在Local Machine上运行代码时,都会出现以下错误:
“价值不在预期范围内。”
我一直在搜索stackoverflow(Like here)和所有地方,但我似乎无法找到任何解决方案......
很难找到有关此错误的任何信息,因为它非常通用..
我创建了一个全新的项目,其示例代码如此,没有。
问题可能是什么建议?
答案 0 :(得分:0)
您的任务没有设置触发器:
TimeTrigger trigger = new TimeTrigger(15, false);
BackgroundTaskBuilder builder = new BackgroundTaskBuilder();
builder.TaskEntryPoint = typeof(SubTask).FullName;
builder.SetTrigger(trigger);
builder.Register();
确保使用Package.appxmanifest中的正确触发器注册任务:
<Extension Category="windows.backgroundTasks" EntryPoint="xxx.SubTask">
<BackgroundTasks>
<Task Type="timer"/>
</BackgroundTasks>
</Extension>