我需要创建始终运行的任务来检查服务器上的数据更新。在坏的情况下,我必须向远程sertver提出多达300个单独的http请求才能获取数据。我正在使用web api,我无法减少请求数量。
因此,我正在寻找延长后台任务生命周期的方法。是否可以在UWP背景任务中使用ExtendedExecutionSession?
答案 0 :(得分:2)
您需要使用extendedBackgroundTaskTime功能来消除执行时间限制。
此功能可删除执行时间限制和空闲任务 看门狗。一旦后台任务启动,无论是通过触发器还是 一个应用程序服务调用,一旦它推迟了 Background方法提供的BackgroundTaskInstance,它可以运行 下去。
<?xml version="1.0" encoding="utf-8"?>
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap mp rescap">
...
...
<Capabilities>
<rescap:Capability Name="extendedBackgroundTaskTime"/>
</Capabilities>
...
...
</Package>
但是,如果您计划将应用程序发布到Windows应用商店,则不支持此功能。