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


Манифесты функций приложения

Манифесты функций приложений определяют расположение приложений, которые вы хотите включить в изображение. Как и другие манифесты функций, манифесты функций приложений должны быть включены в <AdditionalFMs> элемент в файле OEMInput.xml изображения, чтобы приложения, определенные в fm приложения, были включены в изображение.

Для первого образа можно одновременно добавить все приложения в папку приложений рабочей области с помощью CreateWSKAppsFM и UpdateWSKAppsFM.

Пример манифеста OEMAppsFM.xml

<?xml version="1.0" encoding="utf-8"?>
<FeatureManifest 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns="http://schemas.microsoft.com/embedded/2004/10/ImageUpdate" Revision="1" SchemaVersion="1.2">
  <AppX>
    <AppXPackages>
      <PackageFile Path="%WSKWorkspaceRoot%\Apps\Calculator" Name="Microsoft.WindowsCalculator_8wekyb3d8bbwe.appxbundle" LicenseFile="Microsoft.WindowsCalculator_8wekyb3d8bbwe.xml" ID="Microsoft.WindowsCalculator_8wekyb3d8bbwe" Optional="false" />
      <PackageFile Path="%WSKWorkspaceRoot%\Apps\Frameworks" CPUType="x86" Name="Microsoft.VCLibs.x86.14.00.appx" ID="Microsoft.VCLibs.140.00_8wekyb3d8bbwe" Optional="false" />
      <PackageFile Path="%WSKWorkspaceRoot%\Apps\Frameworks" CPUType="amd64" Name="Microsoft.VCLibs.x64.14.00.appx" ID="Microsoft.VCLibs.140.00_8wekyb3d8bbwe" Optional="false" />
      <PackageFile Path="%WSKWorkspaceRoot%\Apps\Frameworks" CPUType="arm" Name="Microsoft.VCLibs.arm.14.00.appx" ID="Microsoft.VCLibs.140.00_8wekyb3d8bbwe" Optional="false" />
      <PackageFile Path="%WSKWorkspaceRoot%\Apps\ContosoApp" Name="Contoso.Sampleapp_8wekyb3d8bbwe.appxbundle" LicenseFile="Contoso.Sampleapp_8wekyb3d8bbwe.xml" ID="Contoso.Sampleapp_8wekyb3d8bbwe" Optional="false" />
    </AppXPackages>
  </AppX>
</FeatureManifest>

Необязательные приложения

Скрипты в системном комплекте Windows настраивают каждое приложение в приложении FM, чтобы они были включены в образ. Вы можете изменить fm приложения таким образом, чтобы определенные приложения были специально добавлены в OEMInput.xml быть включены в изображение.

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

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

  • Базовый набор приложений, которые будут включены во все образы
  • Набор необязательных приложений, которые можно вручную добавить в определенные файлы OEMInput.xml.

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

Работа с необязательными приложениями

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

  1. Выберите приложение, которое будет отмечено как необязательное.

  2. В FM приложения измените атрибут приложения Optional на "true". Приложение помечается как необязательное, и оно больше не будет включено во все изображения.

    <PackageFile Path="%WSKWorkspaceRoot%\Apps\ContosoApp" Name="Contoso.Sampleapp_8wekyb3d8bbwe.appxbundle" LicenseFile="Contoso.Sampleapp_8wekyb3d8bbwe.xml" ID="Contoso.Sampleapp_8wekyb3d8bbwe" Optional="true" />
    
  3. Запишите идентификатор приложения, например ID="Contoso.Sampleapp_8wekyb3d8bbwe". Не изменяйте этот идентификатор, иначе сборка образа завершится ошибкой.

    Если вы приобрели приложение в Microsoft Store, имя семейства пакетов можно найти в лицензии приложения. Откройте файл лицензии в текстовом редакторе и используйте значение между тегами PFM.

  4. Добавьте необязательное приложение в изображение, добавив идентификатор в качестве <AppXID> значения в OEMInput.xml:

    <AppXOptionalPackages> 
      <AppXID>Contoso.Sampleapp_8wekyb3d8bbwe</AppXID>
    </AppXOptionalPackages> 
    

Вы также можете указать приложение как зависят от архитектуры, добавив CPUType="(arch)" . При сборке образа файлы, которые не соответствуют типу архитектуры, исключаются.

Синтаксис командной строки SetAppsRegion

SetAppsRegion -AppName <AppName> -Region <Region> [-OEMAppsFMPath <path>]
SetAppsRegion -AppName HelloWorld_1.0.0.0_x64.appx -Region en-us,de-de
Параметр Описание
-AppName Имя файла приложения. Name Используйте атрибут в элементе <PackageFile> для приложения.
-Регионе Регион или регионы, в которых приложение должно быть доступно. При указании нескольких регионов разделяйте их с помощью ,: -Region en-us,de-de
-OEMAppsFMPath Путь к FM приложения. Значение по умолчанию — %WSKWorkspaceRoot%\FMFiles\OEMAppsFM.xml.

См. также раздел

Манифесты функций драйвера