在我的 UWP 项目中,我正在使用进程中的后台任务。该任务在不同情况下通过计时器触发器每 15 分钟运行一次:
案例 1:当应用程序运行时 - 在这种情况下,一切正常。
案例2:应用程序关闭时 - 只要应用程序仍然关闭,什么都没有发生。
请帮我解决这个问题?
代码://这是我的BackgroundTask.Run方法
var deferral = taskInstance.GetDeferral();
if (!IsApplicationClosed)
{
//When application is running
await Dispatcher.RunAsync(WCoreDispatcherPriority.Normal, () => {
UpdateUI();
});
}
else
{
UpdateDataStorage();
}
deferral.Complete();
//这是我的 OnBackgroundActivated 方法
base.OnBackgroundActivated(args);
var deferral = args.TaskInstance.GetDeferral();
switch (args.TaskInstance.Task.Name)
{
case "MyBackgroundTask":
{
var task = new MyBackgroundTask();
task.Run(args.TaskInstance);
} break;
};
deferral.Complete();
谢谢。