UpdateOrchestrator API

UpdateOrchestrator планирует автоматическое обновление программного обеспечения с учетом влияния пользователя. Этот API позволяет указать такие действия, как скачивание или установка, а также их требования для запуска обновлений в оптимальное время, которое сводит к минимуму влияние на пользователя. Эти функции особенно повысят производительность систем с ограниченными или медленными вычислительными ресурсами.

Windows 20H1 включает в себя решение первого поколения для вариантов использования автоматического обновления программного обеспечения, которые были приняты обновлениями ОС и обновлениями приложений Store, и предоставляет начальную версию ЭТОГО API ограниченного доступа для выбранного набора обновлений приложений пользовательского режима, как описано ниже.

Функции

  • Динамически регистрирует средства обновления программного обеспечения

  • Вызывает зарегистрированные средства обновления программного обеспечения во время оптимального времени, например во время отсутствия пользователя, для обновления приложений в режиме пользователя.

  • Включает возможность "держать пробуждение" на питание AC для дальнейшего уменьшения влияния пользователей.

Аудитория разработчика

Внимание

API UpdateOrchestrator является частью функции ограниченного доступа (см. класс LimitedAccessFeatures). Дополнительные сведения или запрос маркера разблокировки см. в форме запроса маркера доступа LAF.

Используйте API UpdateOrchestrator, если у вас уже есть фоновые средства обновления программного обеспечения для приложений Win32 "пользовательского режима", таких как средство обновления Adobe для Средства чтения Acrobat или Steam Valve. Этот интерфейс не нужен для приложений UWP/Store, так как Microsoft Store уже использует эту функцию для обновлений программного обеспечения.

Чтобы обеспечить лучший интерфейс клиента, этот начальный выпуск API область для выбранного набора зарегистрированных обновлений, удовлетворяющих следующим критериям:

  • Обновления только для приложений пользовательского режима
  • Не включать драйверы BIOS/ Встроенное ПО или устройство или программное обеспечение
    • Обновление bios, встроенного ПО или драйверов устройств или программного обеспечения, которые не прошли распространенные критерии качества, представляют значительный риск, особенно если пользователь отсутствует.
  • Участие в использовании этого API влечет за собой возможность поручиться за все содержимое, скачанные и установленные фоновыми средствами обновления программного обеспечения в системах пользователей с помощью аудита.

Первоначальный выпуск API UpdateOrchestrator, так как функция ограниченного доступа доступна только для обновлений, которые соответствуют указанным выше критериям в настоящее время.

Наша цель — улучшить функциональные возможности этого API и снизить влияние нескольких автоматических обновлений программного обеспечения в Windows. Мы ценим ваш вклад в этом кратком опросе , чтобы помочь нам понять, как API UpdateOrchestrator может лучше обслуживать ваши потребности разработчика.

Expediting OEM Apps с помощью универсальной платформы Orchestrator

Внимание

Универсальный оркестратор предоставляет функциональные возможности для OE-производителей для регистрации приложения во время процесса создания образов для выполнения однократной ускоренной установки или обновления. Эта установка выполняется в течение 30 минут после входа пользователя на новое устройство. Помните, что ускорение работы приложения может негативно повлиять на производительность для новых устройств. Эта функция доступна только при выборе клиентских сборок и в выборе регионов.

Требования

Чтобы подключиться к ускоренной платформе приложений, приложение должно соответствовать следующим требованиям:

  • Оно должно быть упакованным приложением Магазина в формате MSIX
  • Он должен иметь допустимое имя семейства продуктов (PFN)

Регистрация

OEM может зарегистрировать приложение для ускорения, написав новый ключ в существующей промежуточной папке для ускоряемых приложений:

HKLM\Software\Microsoft\WindowsUpdate\Orchestrator\UScheduler_OOBE

Каждая изготовитель оборудования предоставила регистрацию в виде подраздела (с уникальным именем, которое будет использоваться для идентификации этого ускоренного приложения), а также набор значений реестра для указания конкретных параметров для этого приложения. Содержимое каждого ключа находится в следующем формате:

Имя ключа: уникальное имя для этого ускоренного приложения

В подразделе для ускоренной регистрации приложений изготовители оборудования должны создать два значения:

  • Имя значения: updaterPriority
    Описание: число, указывающее относительный приоритет этого обновления приложения
    Тип значения: REG_DWORD
    Данные: числовое значение от 1 до 100. Более низкие значения указывают на более высокий относительный приоритет для других ускоряемые приложения.

  • Имя значения: ускоренная payload
    Описание: БОЛЬШОЙ двоичный объект JSON с параметрами для этого конкретного обновления
    Тип значения: REG_SZ
    Данные: строка, представляющая допустимый БОЛЬШОЙ двоичный объект JSON с параметрами для этого конкретного обновляющего объекта

Общие сведения о содержимом БОЛЬШОго двоичного объекта JSON:

State Тип Имя ключа Description
Обязательное поле Строка PFN Имя семейства пакетов приложения (например, Microsoft.WindowsStore_8wekyb3d8bbwe)
Обязательное поле Строка Конечная точка Строковый URI, указывающий на расположение, в котором размещен пакет MSIX. Должен быть URI SSL, который начинается с https.
Необязательно Логический AllowedInOobe Должно ли это ускоренное приложение выполняться во время пользовательского OOBE
Необязательно Число MaxRetryCount Число попыток повторного выполнения этого обновления после сбоя. По умолчанию 1. Максимальное значение — 5.
Необязательно Число TimeoutDurationInMinutes Длительность в минутах ожидания завершения работы этого обработчика обновления. Значение по умолчанию — 15. Максимальное значение — 30
Необязательно Массив (строка) Исключенныеregions Массив строк JSON для регионов, где это приложение не должно быть ускорено. Каждая запись в массиве соответствует 2 букве ISO 3166-1 код страны требуемого региона. Например, предотвратит этот поток на устройствах, ["US"] где регион США.

Пример полезных данных JSON:

{  
    "PFN": "PFNName",  
    "Endpoint": "SSL_URI",  
    "AllowedInOobe": false,  
    "MaxRetryCount": 3,  
    "TimeoutDurationInMinutes": 15,  
    "ExcludedRegions": ["CN", "FR"]   
}

Выполнение

Универсальная платформа Orchestrator автоматически вызывает каждое зарегистрированное приложение в последовательности на основе относительного приоритета в течение первых 30 минут пользователя, достигающего рабочего стола на новом устройстве (или во время пользователя OOBE, если РазрешеноInOobe имеет значение true). Каждое зарегистрированное приложение, добавленное процессом регистрации OEM, будет предпринята до тех пор, пока не будет выполнено следующее:

  • Он успешно установлен
  • Он превышает максимальное количество сбоев, указанных в MaxRetryCount. После каждого сбоя приложение введет период охлаждения в течение 30 минут, прежде чем повторить попытку.

Платформа универсального оркестратора не будет выполнять ускоренную попытку, если одно из следующих условий имеет значение true:

  • Устройство не имеет доступа к Интернету
  • Устройство находится в сети с лимитным доступом
  • Устройство подключено к батарее, а экономия батареи включена
  • Устройство настроено с помощью политики ограниченного сетевого трафика Обновл. Windows
  • Устройство настроено с помощью политики CTA, которая не задана для AutoApprove

В каждом из этих случаев платформа универсального оркестратора будет хранить регистрации на месте, пока конфигурация устройства не позволит ускорить попытки продолжить.

Внимание

Соблюдайте осторожность при выборе ускорения приложений с помощью этой платформы, так как операции обновления происходят, когда устройство может использоваться и может привести к негативному влиянию на работу пользователя на новом устройстве.