Поделиться через


Зарегистрировать приложение OEM во время процесса создания образа

Важный

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

Windows 11 23H2 — KB5046732 (сборка ОС 22631.4541)
Windows 11 24H2 — KB5046740 (сборка ОС 26100.2454)

Требования

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

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

  • Он должен иметь действительное имя семейства продуктов (PFN)

Регистрация

Файлы регистрации — это JSON-файлы в формате ASCII, содержащие метаданные с информацией о требуемом ускорении процесса и любых настройках целевой аудитории на стороне клиента, которые необходимо выполнить.

Экспресс-приложениями поддерживаются два механизма для обновления и установки приложения:

  1. Через Microsoft Store, используя ProductId (рекомендуется)

  2. Из URL-адреса, содержащего пакет MSIX или набор. Этот пакет должен содержать упакованое приложение Store с допустимым именем семейства пакетов (PFN). Владелец изготовителя оборудования или приложения отвечает за обслуживание этого URL-адреса.

Каждый файл регистрации должен содержать следующие обязательные свойства JSON:

Ключ Тип Описание
PFN Струна Имя семейства пакетов приложения (пример: Microsoft.WindowsStore_8wekyb3d8bbwe)
OEMName Струна Строка для представления изготовителя оборудования, создающая эту регистрацию
UpdaterName Струна Уникальное имя для отслеживания этой ускоренной регистрации
Версия регистрации Число Версия регистрации этого приложения
Источник Струна Допустимые значения:

Магазин | CustomURL

Магазин — поиск приложения непосредственно из Microsoft Store

CustomURL — выполняет поиск приложения по URL-адресу, указанному в значении "Конечная точка" регистрации приложения.
Сценарий Струна Допустимые значения:

Обновление | Приобретение | StubAcquisition

Обновление — (не поддерживается для потоков CustomURL) пытается обновить существующее приложение до последней доступной версии. Работа не выполняется, если приложение отсутствует

Приобретение — пытается получить последнюю версию приложения.

StubAcquisition — пытается получить заглушку приложения (если она доступна). Получает полное приложение, если заглушка недоступна.
ProductId Струна (Требуется только для сценариев Магазина)

Идентификатор ProductId нужного приложения магазина
Конечная точка Струна (Требуется только для сценариев CustomURL)

Строковый URI, указывающий на расположение, в котором размещен пакет MSIX. Должен быть SSL-адрес URI, который начинается с 'https'.

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

Ключ Тип По умолчанию Описание
Разрешено в Oobe Булев Ложь Должно ли это ускоренное приложение выполняться во время пользовательского OOBE.

Примечание. Будьте осторожны при установке параметра в true, так как это может создать ограничения ресурсов на устройстве во время встроенной настройки и негативно повлиять на восприятие производительности пользователем.
Максимальное число повторных попыток Число 1 Число попыток повторного выполнения этого обновления после сбоя.

Максимально допустимое значение: 5
ПродолжительностьТаймаутаВМинутах Число 15 Длительность в минутах ожидания завершения работы этого обновлятора.

Максимально допустимое значение: 30
Архитектура Струна Нет ограничений Допустимые значения:

"amd64" | "arm64"

Указывает, должна ли ускоренная работа выполняться только для конкретной архитектуры.
Минимально разрешённая версия сборки Число Нет ограничений Минимальные версии сборки Windows, в которых разрешена ускоренная работа.

Например, если установлено значение 22631, ускоренная работа разрешена для Windows 11 23H2 (10.0.22631.x), но заблокирована для Windows 11 22H2 (10.0.22621.x)
HonorDeprovisioning Булев Неверно (Применимо только для сценариев приобретения)

Если приложение было ранее удалено из эксплуатации, не пытайтесь снова его получить.
ПропуститьЕслиПрисутствует Булев Ложный (Применимо только для сценариев приобретения)

Не выполняйте ускоренную работу, если какая-либо версия приложения уже присутствует.
Приоритет Число 100 Числовое значение от 1 до 100, указывающее относительный приоритет этого обновления приложения.

Более низкие значения указывают на более высокий относительный приоритет для других ускоренных приложений.
Исключенные регионы Массив (строка) Ограничения отсутствуют Массив строк JSON для регионов, в которых это приложение не должно быть ускорено.

Каждая запись в массиве соответствует коду страны ISO 3166-1 требуемого региона.

Пример: ["US", "MX"] предотвратит этот поток на устройствах, где регион является Соединенными Штатами или Мексикой.

Примечание: Это значение нельзя использовать с включёнными регионами.
Включенные регионы Массив (строка) Ограничения отсутствуют Массив строк JSON, указывающий на список регионов, где это приложение должно быть ускорено.

Каждая запись в массиве соответствует коду страны ISO 3166-1 требуемого региона.

Пример: ["US", "MX"] разрешит этот поток только на устройствах, где регион — Соединенные Штаты или Мексика.

Примечание. Это значение нельзя использовать с исключенными регионами.
Включенные издания Массив (число) Ограничения отсутствуют Массив чисел JSON, указывающий список допущенных выпусков, где это приложение должно быть ускорено.

Каждая запись в массиве соответствует коду Edition, полученному с помощью APIGetProductInfo.

Пример: [121, 122], чтобы включить только выпуски "Education" и "EducationN"

Примечание. Это значение нельзя использовать с ExcludedEditions.
Исключенные издания Массив (число) Ограничения отсутствуют Массив чисел в формате JSON для версий, в которых не следует ускорять это приложение.

Каждая запись в массиве соответствует коду Edition, полученному с помощью API GetProductInfo .

Пример: [121, 122] исключить выпуски Education и EducationN.

Примечание. Это значение нельзя использовать с IncludedEditions.

Образцы

приобретение заглушки, зависящей от магазина, только в США и Мексике, для выполнения во время OOBE

{  
    "OEMName": "Contoso",
    "UpdaterName": "OEMApp1",
    "RegistrationVersion":1,  
    "Source": "Store",  
    "Scenario": "StubAcquisition",  
    "PFN": "FakePackageFamilyName",  
    "ProductId": "StoreProductId",  
    "HonorDeprovisioning": true,  
    "AllowedInOobe": true,  
    "IncludedRegions": ["US", "MX"],  
    "Priority": 50  
}

приобретение приложений на основе URL-адресов на устройствах amd64, за исключением выпусков Education и EducationN, только в Windows 11 23H2 (not Windows 11 22H2)

{  
    "OEMName": "Contoso",
    "UpdaterName": "OEMApp1",
    "RegistrationVersion":2,  
    "Source": "CustomURL",  
    "Scenario": "Acquisition",  
    "PFN": "FakePackageFamilyName",  
    "Endpoint": "https://<SSL_URI>",   
    "ExcludedEditions": [121, 122],   
    "Architecture": "amd64",   
    "MinimumAllowedBuildVersion": 22631,  
    "Priority": 60 
}

Инструменты

Чтобы упростить процесс регистрации и предоставить ценные отзывы о метаданных регистрации, OEM должны использовать скрипты AppOrchestration PowerShell из следующего расположения:

microsoft/ms-update-universalorchestrator: Скрипты и инструменты для подключения к потокам обновления на основе Универсального Оркестратора

Скрипты выполняют базовую проверку и подготавливают регистрацию для соответствующего размещения на устройстве. При любых сбоях скрипты вызывают исключение с конкретными сведениями о сбоях.

Чтобы использовать скрипты, выполните следующие действия.

  1. Скачайте скрипты на устройство. На странице репозитория GitHub можно скачать в виде ZIP-файла и извлечь на устройство.

  2. В окне PowerShell выполните команду "Import-Module <PathToScripts>\scripts\AppOrchestration.psd1"

Заметка

Эти сценарии требуют от пользователя права администратора на устройстве и должны выполняться из консоли с повышенными привилегиями.

Для потока регистрации используются четыре основных командлета:

Test-UpdaterRegistration <ПутьКФайлуРегистрации>
Назначение: проверка содержимого предлагаемого файла регистрации (без выполнения регистрации). Позволяет производителю оригинального оборудования (OEM) модифицировать данные файла регистрации, не влияя на устройство.

Add-UpdaterRegistration <PathToRegistrationFile>
Назначение: Проверка и подготовка содержимого файла регистрации в подходящее место для подключения к процессу быстрого потока приложений.

Get-UpdaterRegistration <OEMName><UpdaterName>
Назначение. Если указаны oemName и UpdaterName, верните сводку о существующей регистрации, которая соответствует этим значениям. Если эти входные данные опущены, верните сводку всех текущих регистраций, присутствующих на устройстве.

Remove-UpdaterRegistration <OEMName><UpdaterName>
Назначение. Отмена регистрации, которая соответствует значениям OEMName и UpdaterName.

Исполнение

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

  • Он успешно установлен

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

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

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

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

Важный

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