поэтому у меня есть фоновая задача на UWP, которая загружает данные с сервера. Эта задача может занять до минуты в зависимости от скорости интернета. Я обнаружил, что когда мой пользователь сворачивал приложение, загрузка приостанавливалась, поэтому я решил запустить его на BackgroundTask
При тестировании я обнаружил, что моя загрузка не завершается, а позже был найден на по этой ссылке, что фоновые задачи имеют ограничение:
Фоновые задачи ограничены 30 секундами использования настенных часов.
Но еще немного погуглив, я нашел эта ссылка, которая говорит о том, как увеличить время ожидания фоновой задачи
В универсальной платформе Windows фоновые задачи — это процессы, которые выполняются в фоновом режиме без какого-либо пользовательского интерфейса. Фоновые задачи обычно могут выполняться не более двадцати пяти секунд, прежде чем они будут отменены. Некоторые из более длительных задач также имеют проверку, чтобы убедиться, что фоновая задача не простаивает и не использует память. В обновлении Windows Creators Update (версия 1703) была введена ограниченная возможность extendedBackgroundTaskTime для снятия этих ограничений. Возможность extendedBackgroundTaskTime добавляется как ограниченная возможность в файле манифеста вашего приложения:
Пакет.appxmanifest
XML
<Package ...> <Capabilities> <rescap:Capability Name="extendedBackgroundTaskTime"/> </Capabilities> </Package>
Эта возможность снимает ограничения времени выполнения и сторожевой таймер бездействующих задач.
Но после добавления вышеуказанного в мой файл package.appxmanifest я получаю следующую ошибку:
Содержимое файла Package.appxmanifest не является корректным XML. 'rescap' - это необъявленный префикс
Итак, можно ли удалить это ограничение фоновой задачи из моего приложения?
extendedBackgroundTaskTime
. означает ли это, что невозможно сделать то, что я пытаюсь сделать выше? - person user1   schedule 29.01.2018