uap:Extension

Объявляет точку расширяемости для приложения.

Иерархия элементов

<Package>
   └─ <Applications>
      └─ <Application>
         └─ <Extensions>
            └─ <uap:Extension>

Синтаксис

<uap:Extension
  Category = 'A required the extension category for a UAP extension.'
  desktop11:AppLifecycleBehavior = 'An optional string that can have one of the following values: "systemManaged", or "unmanaged".'
  Executable = 'An optional string between 1 and 256 characters in length that must end with ".exe" and cannot contain these characters: <, >, :, ", |, ?, or *.'
  EntryPoint = 'An optional string between 1 and 256 characters in length that cannot start or end with a whitespace character.'
  RuntimeType = 'An optional string between 1 and 255 characters in length that cannot start or end with a period or contain these characters: <, >, :, ", /, \, &#124;, ?, or *.'
  StartPage = 'An optional string between 1 and 256 characters in length that cannot contain these characters: <, >, :, ", |, ?, or *.'
  ResourceGroup = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
  uap10:TrustLevel = 'An optional string that can have one of the following values: "appContainer", or "mediumIL".'
  uap10:RuntimeBehavior = 'An optional string that can have one of the following values: "windowsApp", "packagedClassicApp", or "win32App".'
  uap10:HostId = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
  uap10:Parameters = 'An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end.'
  uap11:Id = 'An optional string between 1 and 255 characters in length with a non-whitespace character at its beginning and end.'
  uap11:Subsystem = 'An optional string that can have one of the following values: "console", or "windows".'
  uap11:SupportsMultipleInstances = 'An optional boolean value.'
  uap11:ResourceGroup = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
  uap11:CurrentDirectoryPath = 'An optional string that cannot contain these characters: <, >, |, ?, or *.'
  uap11:Parameters = 'An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end.'
  desktop7:CompatMode = 'An optional string that can have one of the following values: "classic", or "modern".'
  desktop7:Scope = 'An optional string that can have one of the following values: "machine", or "user".' >

  <!-- Child elements -->
  uap:FileTypeAssociationChoice?
  uap:ProtocolChoice?
  uap:AppServiceChoice?
  uap:AutoPlayContent?
  uap:AutoPlayDevice?
  uap:ShareTarget?
  uap:FileOpenPicker?
  uap:FileSavePicker?
  uap:AppointmentsProvider?
  uap:WebAccountProvider?
  uap:DialProtocol?
  uap:MediaPlayback?
  uap:VoipCall?

</uap:Extension>

Ключ

? необязательный (ноль или один)

Атрибуты

Атрибут Описание Тип данных Обязательный Значение по умолчанию
Категория Тип расширения. Строка, которая должна быть одной из следующих значений: windows.fileTypeAssociation, windows.protocol, windows.autoPlayContent, windows.autoPlayDevice, windows.shareTarget, windows.search, windows.fileOpenPicker, windows.fileSavePicker, windows.cachedFileUpdater, windows.cameraSettings, windows.accountPictureProvider, windows.printTaskSettings, windows.lockScreenCall, windows.appointmentsProvider, windows.alarm, windows.webAccountProvider, windows.dialProtocol, windows.appService, windows.mediaPlayback, windows.print3DWorkflow, windows.lockScreen, windows.aboveLockScreen, windows.personalAssistantLaunch, windows.voipCall. Да
desktop11:AppLifecycleBehavior Необязательная строка, которая может иметь одно из следующих значений: systemManaged, неуправляемая. Нет
Исполняемый объект Исполняемый файл по умолчанию. Необязательная строка от 1 до 256 символов длиной, которая должна заканчиваться ".exe" и не может содержать следующие символы: <, , >: , ", ", |, ?или *". Нет
EntryPoint Идентификатор активируемого класса. Необязательная строка от 1 до 256 символов длиной, которая не может начинаться или заканчиваться символом пробела. Нет
RuntimeType Поставщик среды выполнения. Обычно используется при наличии смешанных платформ в приложении. Необязательная строка от 1 до 255 символов длиной, которая не может начинаться или заканчиваться периодом или содержать следующие символы: <, , >: , ", /, |, ?или *. Нет
StartPage Веб-страница, обрабатывающая точку расширяемости. Необязательная строка от 1 до 256 символов длиной, которая не может содержать следующие символы: <, , >:, ", |, ?или *. Нет
ResourceGroup Тег, который можно использовать для группирования активаций расширений вместе для целей управления ресурсами (например, ЦП и памяти). Необязательная буквенно-цифровые строки длиной от 1 до 255 символов. Должен начинаться с алфавитного символа. Нет
uap10:TrustLevel Указывает уровень доверия расширения. Необязательная строка, которая может иметь одно из следующих значений: appContainer, mediumIL. Нет
uap10:RuntimeBehavior Указывает поведение времени выполнения расширения. Необязательная строка, которая может иметь одно из следующих значений: windowsApp, packagedClassicApp, win32App. Нет
uap10:HostId Указывает идентификатор среды выполнения узла для расширения. Необязательная буквенно-цифровые строки длиной от 1 до 255 символов. Должен начинаться с алфавитного символа. Нет
uap10:Parameters Содержит параметры командной строки для передачи в расширение. Поддерживается только для классических приложений, имеющих удостоверение пакета. Необязательная строка между 1 и 32767 символами длиной без пробелов в начале и конце. Нет
uap11:Id Идентификатор расширения. Идентификатор должен быть уникальным для всех расширений в пакете. Необязательная строка в диапазоне от 1 до 255 символов длиной с символом без пробелов в начале и конце. Нет
uap11:Подсистема Этот атрибут полезен для процессов, отличных от UWP, которые необходимо запустить с определенной подсистемой. В большинстве случаев это должно оставаться по умолчанию. Необязательная строка, которая может иметь одно из следующих значений: консоль, окна. Нет
uap11:SupportsMultipleInstances Указывает, поддерживает ли расширение несколько экземпляров. Необязательное логическое значение. Нет
uap11:ResourceGroup Тег, который можно использовать для группирования активаций расширений вместе для целей управления ресурсами (например, ЦП и памяти). Необязательная буквенно-цифровые строки длиной от 1 до 255 символов. Должен начинаться с алфавитного символа. Нет
uap11:CurrentDirectoryPath Указывает начальный каталог при запуске процесса. Необязательная строка, которая не может содержать следующие символы: <, >|, ?или *. Нет
uap11:Parameters Содержит параметры командной строки для передачи в расширение. Необязательная строка между 1 и 32767 символами длиной без пробелов в начале и конце. Нет
desktop7:CompatMode Указывает режим совместимости для расширения. Необязательная строка, которая может иметь одно из следующих значений: классическая, современная. Нет
desktop7:Scope Указывает, является ли расширение для каждого пользователя или компьютера. Необязательная строка, которая может иметь одно из следующих значений: компьютер, пользователь. Нет

Дочерние элементы

Дочерний элемент Описание
uap:AutoPlayContent Объявляет точку расширяемости приложения типа windows.autoPlayContent. Приложение предоставляет указанные действия с содержимым автозапуска.
uap:AutoPlayDevice Объявляет точку расширяемости приложения типа windows.autoPlayDevice. Приложение предоставляет указанные действия устройства Автозапуска.
uap:ShareTarget Объявляет точку расширения приложения типа windows.shareTarget. Приложение может совместно использовать указанные типы файлов.
uap:FileOpenPicker Объявляет точку расширяемости приложения типа windows.fileOpenPicker. Приложение позволяет пользователю выбирать и открывать указанные типы файлов.
uap:FileSavePicker Объявляет точку расширяемости приложения типа windows.fileSavePicker. Приложение позволяет пользователю выбрать имя файла, расширение и расположение хранилища для указанных типов файлов.
uap:AppointmentsProvider Объявляет точку расширяемости приложения типа windows.appointmentsProvider.
uap:WebAccountProvider Объявляет точку расширяемости приложения типа windows.webAccountProvider.
uap:DialProtocol Объявляет точку расширяемости приложения типа windows.dialProtocol.
uap:MediaPlayback Объявляет точку расширяемости приложения типа mediaPlayback, чтобы приложение вело объявление о том, что оно выполняет перекодирование видео.
uap:VoipCall Объявляет точку расширяемости приложения типа voipCall, чтобы приложение может объявить, что оно может выполнить обновление с сотового звонка на видеозвонок VoIP и (или) приложение VoIP, которое поддерживает телефонные номера напрямую.

Родительские элементы

Родительский элемент Описание
Extensions

Требования

Элемент Ценность
Namespace http://schemas.microsoft.com/appx/manifest/uap/windows10
desktop11 http://schemas.microsoft.com/appx/manifest/desktop/windows10/11
desktop7 http://schemas.microsoft.com/appx/manifest/desktop/windows10/7
uap10 http://schemas.microsoft.com/appx/manifest/uap/windows10/10
uap11 http://schemas.microsoft.com/appx/manifest/uap/windows10/11
минимальная версия ОС Windows 10 версии 1511 (сборка 10586)

Замечания

Для большинства типов расширений Extension@ResourceGroup должно соответствовать Application@ResourceGroup (если Application@ResourceGroup опущен, то Extension@ResourceGroup следует также опустить).

Для контракта на основе пользовательского интерфейса: если Extension@ResourceGroup не указано, оно будет неявно сгруппировано с Applicationпомощью ; если Extension@ResourceGroup не соответствует Application@ResourceGroup, манифест завершится ошибкой проверки схемы.

Если Extension@ResourceGroup не заданы для фоновой задачи или контракта, основанного на фоновой задаче, она будет связана с группой по умолчанию для всех фоновых задач. Контракты фоновых задач могут указывать те же значения, что Applicationи @ResourceGroup.

Для следующих ExtensionsExtension@ResourceGroup позволяет сгруппировать фоновую задачу в различные процессы, которые будут управляться ресурсом и жизненным циклом независимо от других групп: windows.backgroundTasks, windows.appServices, windows.preinstalledConfigTask и windows.updateTask.

Например, если манифест имел эти три записи.

<Extension Category="windows.backgroundTasks" EntryPoint="Fabrikam.BackgroundTask" ResourceGroup="Group1">
  <BackgroundTasks>
    <Task Type="timer"/>
  </BackgroundTasks>
</Extension>
<Extension Category="windows.backgroundTasks" EntryPoint="Fabrikam.BackgroundTask2" ResourceGroup="Group2">
  <BackgroundTasks>
    <Task Type="controlChannel"/>
  </BackgroundTasks>
</Extension>
<Extension Category="windows.backgroundTasks" EntryPoint="Fabrikam.BackgroundTask3" ResourceGroup="Group2">
  <BackgroundTasks>
    <Task Type="pushNotification"/>
  </BackgroundTasks>
</Extension>

Затем последние две фоновые задачи будут активированы в одном экземпляре backgroundtaskhost.exe , если они были активированы одновременно. Однако отдельный экземпляр backgroundtaskhost.exe будет вставка для первой записи, так как она имеет другую группу ресурсов.

Если для расширения не указана группа ресурсов, все фоновые задачи активируются в одном экземпляре backgroundtaskhost.exe.

Кроме того, если один из этих расширений (windows.backgroundTasks, windows.appServices, windows.preinstalledConfigTask или windows.updateTask) указывает то же значение атрибута ResourceGroup родительского Application элемента, что они будут активированы в том же процессе, что и пользовательский интерфейс.

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

  • Поиск. Регистрирует приложение в качестве поставщика поиска. Индексированные содержимое приложения могут отображаться как результаты поиска в глобальном интерфейсе поиска, запущенном с помощью чудо-кнопки поиска. Для каждого приложения допускается только один экземпляр этого объявления.
  • CachedFileUpdater: регистрирует приложение в качестве кэшированного модуля обновления файлов, позволяя приложению предоставлять обновления файлов, к которым обращаются другие приложения Microsoft Store. Для каждого приложения допускается только один экземпляр этого объявления.
  • Параметры камеры: позволяет приложению предоставлять пользовательские панели управления для устройств веб-камеры. Для каждого приложения допускается только один экземпляр этого объявления.
  • AccountPictureProvider: регистрирует приложение в качестве поставщика рисунков учетной записи, позволяя запускать его в режиме рисунка учетной записи и настраивать рисунок пользователя без дополнительных запросов. Для каждого приложения допускается только один экземпляр этого объявления.
  • PrintTaskSettings: позволяет приложению заменить базовые параметры печати. Для каждого приложения допускается только один экземпляр этого объявления.
  • LockScreen: если телефон заблокирован, существует ограниченное количество взаимодействия, которое может выполнять пользователь. В некоторых случаях пользователь хотел бы иметь возможность ответить на звонок VoIP без разблокировки телефона. Этот контракт делает это возможным. Для каждого приложения допускается только один экземпляр этого объявления.
  • Тревога: приложение может объявить себя как приложение системы сигнализации. Когда пользователь проходит через пользовательский интерфейс выбора, чтобы задать системную сигнализацию, можно выбрать только приложения, объявленные как приложения системной сигнализации. Для каждого приложения допускается только один экземпляр этого объявления.
  • BackgroundTasks: фоновые задачи позволяют приложениям взаимодействовать друг с другом и позволяют одному приложению вызывать другое. Чтобы использовать контракты для предоставления или запуска этих фоновых задач, приложение должно быть объявлено как служба приложений. В каждом приложении разрешено несколько экземпляров этого объявления.
  • Print3DWorkFlow. Производители трехмерных принтеров могут предоставить универсальное приложение Windows для предоставления уникального интерфейса в 3D-диалоговом окне печати. В противном случае Windows предоставляет 3D-печать по умолчанию. Для каждого приложения допускается только один экземпляр этого объявления.
  • PersonalAssistantLaunch: позволяет приложению интегрироваться с Кортаны. Для каждого приложения допускается только один экземпляр этого объявления.

Примеры