注册后台任务而不运行应用程序

tl; dr :如何在不运行应用程序的情况下注册后台任务?

长版

我想在每次用户使用SystemTriggerType.UserPresent登录时注册后台任务。

我找到了有关注册任务的信息,但这是必须执行的代码。 如果必须应用程序运行执行任务那就没问题了。 但是如何在运行应用程序的情况下注册任务? 后台任务可以通过注册

 var builder = new BackgroundTaskBuilder(); 

然后

 builder.Name = taskName; builder.TaskEntryPoint = taskEntryPoint; builder.SetTrigger(trigger); BackgroundTaskRegistration task = builder.Register(); 

如上所述: 注册后台任务 。

但正如我所说 – 我的问题是如何在应用程序执行之前运行此代码。

您可以在清单中使用preInstalledConfigTask扩展名。 安装应用程序后将启动此任务。

有时您的应用程序需要在安装后立即更新。 此合同将使您能够立即启动更新任务,而无需任何用户交互,以确保您的应用程序立即更新。

以下是所有可用扩展的完整列表。

可以使用清单编辑器设置preInstalledConfigtask

编辑器中的预安装任务

     

您将在清单模式中找到扩展定义

我最近遇到了同样的问题,之前的答案中缺少的是预安assembly置仅触发OEM和MO。 看到这里 。

话虽这么说,可能无法做你想做的事情,因为任务永远不会触发,除非你没有管理操作系统并运送图像+在你的开发者中心拥有必要的权利。 看这里。