提高UWP背景任务寿命

提高UWP背景任务寿命,uwp,Uwp,我需要创建始终运行的任务来检查服务器上的数据更新。在糟糕的情况下,我必须向远程服务器发出多达300个单独的http请求才能获取数据。我按原样使用web api,无法减少请求数量 因此,我正在寻找延长后台任务生命周期的方法。是否可以在UWP后台任务中使用ExtendedExecutionSession 您需要使用该功能来消除执行时间限制 此功能消除了执行时间限制和空闲任务 监察人后台任务启动后,无论是通过触发器还是 应用程序服务呼叫,一旦延迟 Run方法提供的BackgroundTaskInsta

我需要创建始终运行的任务来检查服务器上的数据更新。在糟糕的情况下,我必须向远程服务器发出多达300个单独的http请求才能获取数据。我按原样使用web api,无法减少请求数量

因此,我正在寻找延长后台任务生命周期的方法。是否可以在UWP后台任务中使用ExtendedExecutionSession

您需要使用该功能来消除执行时间限制

此功能消除了执行时间限制和空闲任务 监察人后台任务启动后,无论是通过触发器还是 应用程序服务呼叫,一旦延迟 Run方法提供的BackgroundTaskInstance,它可以运行 无限期


...
...
...
...
但是,如果您计划将应用发布到Windows应用商店,则不支持此功能。

您需要使用此功能删除执行时间限制

此功能消除了执行时间限制和空闲任务 监察人后台任务启动后,无论是通过触发器还是 应用程序服务呼叫,一旦延迟 Run方法提供的BackgroundTaskInstance,它可以运行 无限期


...
...
...
...

但是,如果您计划将应用程序发布到Windows应用商店,则不支持此功能。

为什么不使用将以固定间隔重复的TimerTask?TimerTask生存期严格限制为25秒。我需要比“裸”TimerTask更多的执行时间。为什么不使用以恒定间隔重复的TimerTask?TimerTask的生存时间严格限制为25秒。我需要比“裸体”TimerTask更多的执行时间。它看起来和我需要的完全一样,但我有点困惑——可以使用extendedBackgroundTaskTime而不使用它吗?我的应用程序不会在应用商店发布。请发布启用extendedBackgroundTaskTime的Package.appxmanifest示例?@V.March我更新了示例的答案。正如我在回答中提到的,只要你不需要将应用发布到应用商店,你就可以使用它。它看起来和我需要的一模一样,但我有点困惑——是否可以使用extendedBackgroundTaskTime而不使用它?我的应用程序不会在应用商店发布。请发布启用extendedBackgroundTaskTime的Package.appxmanifest示例?@V.March我更新了示例的答案。正如我在回答中提到的,只要你不需要将应用发布到商店,你就可以使用它。
<?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>