运行 特定时间的后台任务 - Windows 10 个应用

Run Background Task at specific time - Windows 10 App

我已经搜索了一种在特定时间 e.x 每天 运行 后台任务的方法。在 12:00.

我已经用 TimeTrigger 注册了 BackgroundTask,不幸的是,它在注册后立即启动。

builder.SetTrigger(new TimeTrigger(24 * 60, false));

有没有更简单的方法,然后每小时检查一次是否是一天中的正确时间?

我以前用这个任务包装器创建过类似的东西,它每天都会触发。也许这就是您要找的。

http://taskscheduler.codeplex.com/

Microsoft 似乎避免应用程序在精确时间触发,但您可以通过计算从用户注册任务到 12:00 的分钟数来接近,然后重新订阅另一个任务从那里设置为 24*60。我不确定 Microsoft 是否允许在后台任务中执行此操作,但值得一试。

计算任务到午夜的分钟数示例

var tommorowMidnight = DateTime.Today.AddDays(1);
var timeTilMidnight = tommorowMidnight - DateTime.Now;
var minutesTilMidnight = (uint)timeTilMidnight.TotalMinutes;
builder.SetTrigger(new TimeTrigger(minutesTilMidnight, true));