Объявления возможностей приложения
В манифесте пакета вашего приложения для Windows должны быть объявлены возможности для получения доступа к определенным API-интерфейсам Windows или ресурсам, например изображениям и музыке, или устройствам, таким как камера или микрофон. Эти возможности используют приложения UWP, а также классические приложений других типов, упакованные в MSIX- или APPX-пакет для Windows.
Доступ к определенным ресурсам или API запрашивается при помощи объявления возможностей в манифесте пакета приложения. Общие возможности можно объявлять с помощью конструктора манифестов в Visual Studio или добавлять вручную. Подробнее: Указание возможностей в манифесте пакета. Не забывайте, что когда пользователи получают ваше приложение из Магазина, они уведомляются обо всех объявленных возможностях приложения. Поэтому не стоит объявлять возможности, которые вашему приложению не требуются.
Некоторые возможности обеспечивают приложениям доступ к конфиденциальному ресурсу. Эти ресурсы считаются конфиденциальными, так как они могут получать доступ к личным данным пользователя или стоить пользователю денег. Настройки конфиденциальности, управляемые приложением "Параметры", позволяют пользователю динамически управлять доступом к конфиденциальным ресурсам. Таким образом, важно, чтобы приложение не считало конфиденциальные ресурсы всегда доступными. Дополнительные сведения о доступе к конфиденциальным ресурсам см. в разделе Безопасность. Возможности, которые предоставляют приложения с доступом к конфиденциальным ресурсам, помечены звездочкой (*) около сценария возможности.
Существует несколько типов возможностей.
- Возможности общего применения — используются в большей части сценариев приложений.
- Возможности устройства — позволяют вашему приложению получить доступ к периферийным и внутренним устройствам.
- Ограниченные возможности — требуют утверждения для отправки в Microsoft Store и (или) доступны только Майкрософт и определенным партнерам.
- Настраиваемые возможности.
Возможности общего применения
Эти возможности указываются с помощью элемента Capability в манифесте пакета приложения. Они используются в большей части сценариев приложений.
Примечание
Все элементы Capability должны стоять перед любым элементом CustomCapability и DeviceCapability в узле Capabilities в манифесте пакета.
Сценарий возможности | Использование возможности |
---|---|
Музыка* | Возможность musicLibrary обеспечивает программный доступ к музыке пользователя, позволяя приложению перечислять все файлы в библиотеке музыки и обращаться к ним без участия пользователя. Обычно данная возможность используется в приложениях-проигрывателях, которым необходим доступ ко всей фонотеке. Возможность file picker предоставляет надежный механизм пользовательского интерфейса, позволяющий пользователям открывать файлы для использования в приложении. Возможность musicLibrary следует объявлять, только если по сценарию работы приложения требуется программный доступ и его невозможно предоставить, используя file picker. Возможность musicLibrary должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="musicLibrary"/></Capabilities> |
Изображения* | Возможность picturesLibrary обеспечивает программный доступ к изображениям пользователя, позволяя приложению перечислять все файлы в библиотеке изображений и обращаться к ним без участия пользователя. Обычно данная возможность используется в приложениях для работы с фотографиями, которым необходим доступ ко всей библиотеке изображений. Возможность file picker предоставляет надежный механизм пользовательского интерфейса, позволяющий пользователям открывать файлы для использования в приложении. Возможность picturesLibrary следует объявлять, только если по сценарию работы приложения требуется программный доступ и его невозможно предоставить, используя file picker. Возможность picturesLibrary должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="picturesLibrary"/></Capabilities> |
Видео* | Возможность videosLibrary обеспечивает программный доступ к видеозаписям пользователя, позволяя приложению перечислять все файлы в библиотеке и обращаться к ним без участия пользователя. Обычно данная возможность используется в приложениях-видеопроигрывателях, которым необходим доступ ко всей библиотеке видео. Возможность file picker предоставляет надежный механизм пользовательского интерфейса, позволяющий пользователям открывать файлы для использования в приложении. Возможность videosLibrary следует объявлять, только если по сценарию работы приложения требуется программный доступ и его невозможно предоставить, используя file picker. Возможность videosLibrary должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="videosLibrary"/></Capabilities> |
Съемные носители | Возможность removableStorage предоставляет программный доступ к файлам на съемных носителях, например на USB-накопителях и внешних жестких дисках, отфильтрованный на основе сопоставления типов файлов, которые объявлены в манифесте пакета. Например, если для средства просмотра документов объявлено сопоставление типов файлов с расширением DOC, оно сможет открывать DOC-файлы со съемных носителей, но не сможет работать с другими типами файлов. Будьте внимательны при объявлении этой возможности, так как пользователи могут записывать различные данные на свои съемные носители и рассчитывают, что ваше приложение будет иметь веские основания для программного доступа к съемным носителям для всех файлов с объявленным типом. Пользователи рассчитывают, что приложение правильно обработает все объявленные сопоставления файлов. Поэтому не объявляйте сопоставлений файлов, которые приложение не сможет достоверно обработать. Возможность file picker предоставляет надежный механизм пользовательского интерфейса, позволяющий пользователям открывать файлы для использования в приложении. Возможность removableStorage следует объявлять, только если по сценарию работы приложения требуется программный доступ и его невозможно предоставить, используя file picker. Возможность removableStorage должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="removableStorage"/></Capabilities> |
Интернет и общедоступные сети* | Существуют две возможности, которые предоставляют различные уровни доступа к Интернету и общедоступным сетям. Возможность internetClient показывает, что приложения могут получать входящие данные из Интернета. Не может работать в качестве сервера. Отсутствует доступ к локальной сети. Возможность internetClientServer показывает, что приложения могут получать входящие данные из Интернета. Может работать в качестве сервера. Отсутствует доступ к локальной сети. Большинство приложений, использующих веб-службы, будет использовать internetClient. Приложения, реализующие одноранговые сценарии (P2P), когда приложение должно ожидать передачи данных для входящих сетевых подключений, будут использовать internetClientServer. Возможность internetClientServer включает в себя доступ, предоставляемый возможностью internetClient, поэтому нет необходимости указывать internetClient при использовании internetClientServer. |
Домашние и рабочие сети* | Возможность privateNetworkClientServer предоставляет входящий и исходящий доступ к домашней и рабочей сетям через брандмауэр. Эта возможность обычно используется для игр, которые связываются через локальную сеть, и для приложений, обменивающихся данными с несколькими локальными устройствами. Если для вашего приложения указаны возможности musicLibrary, picturesLibrary или videosLibrary, вам не требуется использовать эту возможность, чтобы получить доступ к соответствующей библиотеке в домашней группе. В Windows эта возможность не предоставляет доступ к Интернету. |
Встречи | Возможность appointments предоставляет доступ к хранилищу встреч пользователя. Эта возможность предоставляет доступ для чтения к встречам, полученным из синхронизированных сетевых учетных записей, и к другим приложениям, записывающим данные в хранилище встреч. Эта возможность позволяет вашему приложению создавать новые календари и записывать в них встречи. Возможность appointments должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="appointments"/></Capabilities> |
Контакты* | Возможность contacts предоставляет доступ к сводному представлению контактов из различных хранилищ контактов. Эта возможность предоставляет приложению ограниченный доступ (действуют правила сетевого доступа) к контактам, которые были синхронизированы из разных сетей и локального хранилища контактов. Возможность contacts должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="contacts"/></Capabilities> |
Создание кода | Возможность codeGeneration позволяет приложениям получать доступ к следующим функциям, предоставляющим приложениям возможности JIT. VirtualProtectFromApp CreateFileMappingFromApp OpenFileMappingFromApp MapViewOfFileFromApp |
AllJoyn | Возможность allJoyn позволяет приложениям и устройствам с поддержкой AllJoyn в сети обнаруживать и взаимодействовать друг с другом. Все приложения, которые имеют доступ к API в пространстве имен Windows.Devices.AllJoyn, должны использовать эту возможность. |
Телефонные звонки | Возможность phoneCall предоставляет приложениям доступ ко всем телефонным линиям на устройстве и позволяет выполнять следующие функции.
<Capabilities><uap:Capability Name="phoneCall"/></Capabilities> Возможность phoneCallHistoryPublic позволяет приложениям считывать данные о мобильной сети и некоторую информацию журнала вызовов VoIP на устройстве. Эта возможность также позволяет приложению создавать записи в журнале вызовов VoIP. Эта возможность необходима для получения доступа ко всем членам класса PhoneCallHistoryStore. |
Папка записанных вызовов* | Возможность устройства recordedCallsFolder предоставляет приложениям доступ к папке записанных вызовов. Возможность recordedCallsFolder должна содержать пространство имен mobile при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><mobile:Capability Name="recordedCallsFolder"/></Capabilities> |
Сведения об учетной записи пользователя* | Возможность userAccountInformation позволяет приложениям получать доступ к имени и изображению пользователя. Эта возможность требуется для доступа к некоторым API в пространстве имен Windows.System.UserProfile. Возможность userAccountInformation должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="userAccountInformation"/></Capabilities> |
Звонки VoIP | Возможность voipCall предоставляет приложениям доступ к API для вызовов по протоколу VoIP в пространстве имен Windows.ApplicationModel.Calls. Возможность voipCall должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="voipCall"/></Capabilities> |
Объекты модели 3D | Возможность objects3D позволяет приложениям программным способом получать доступ к файлам трехмерных объектов. Обычно данная возможность используется в приложениях и играх, работающих с трехмерной графикой, которым необходим доступ ко всей библиотеке трехмерных объектов. Эта возможность необходима для доступа к папке, содержащей трехмерные объекты, с помощью API в пространстве имен Windows.Storage. Возможность objects3D должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="objects3D"/></Capabilities> |
Доступ к сообщениям чата* | Возможность chat позволяет приложениям читать и удалять сообщения SMS и MMS. Приложения также смогут хранить сообщения в хранилище системных данных. Эта возможность необходима для доступа к сообщениям с помощью API в пространстве имен Windows.ApplicationModel.Chat. Возможность chat должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="chat"/></Capabilities> |
Чтение заблокированных сообщений* | Возможность blockedChatMessages позволяет приложениям читать SMS- и MMS-сообщения, заблокированные приложением фильтра нежелательной почты. Эта возможность необходима для доступа к заблокированным сообщениям с помощью API в пространстве имен Windows.ApplicationModel.Chat. Возможность blockedChatMessages должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="blockedChatMessages"/></Capabilities> |
Пользовательские устройства | Функция lowLevelDevices позволяет приложениям получать доступ к пользовательским устройствам при выполнении ряда дополнительных требований. Эту возможность не следует путать с возможностью lowLevel устройства, которая обеспечивает доступ к устройствам GPIO, I2C, SPI и PWM. Если вы разрабатываете пользовательский драйвер, предоставляющий интерфейс устройства, и хотите открыть дескриптор для этого устройства, а также отправить запросы IOCTL, необходимо выполнить следующие действия:
|
Администрирование системы IoT | Возможность systemManagement позволяет приложениям иметь базовые права на администрирование системы, в частности, на завершение работы или перезагрузку, изменение языкового стандарта и часового пояса. Эта возможность требуется для доступа к некоторым API в пространстве имен Windows.System. Возможность systemManagement должна содержать пространство имен iot при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><iot:Capability Name="systemManagement"/></Capabilities> |
Воспроизведение мультимедиа в фоновом режиме | Возможность backgroundMediaPlayback меняет поведение API-интерфейсов для работы с мультимедиа, таких как классы MediaPlayer и AudioGraph, чтобы позволить вашим приложениям воспроизводить мультимедиа в фоновом режиме. Все активные звуковые потоки не отключаются, а продолжают воспроизводиться, когда приложение переходит в фоновый режим. Кроме того, жизненный цикл приложения автоматически продлевается во время воспроизведения. |
Удаленная система | Возможность remoteSystem позволяет приложениям получить доступ к списку устройств, связанных с учетной записью Майкрософт пользователя. Доступ к списку устройств необходим для выполнения любых операций, которые совершаются на устройствах. Эта возможность необходима для доступа к членам следующих элементов.
|
Пространственное восприятие | Возможность spatialPerception обеспечивает программный доступ к данным пространственного сопоставления, предоставляя приложениям смешанной реальности сведения о поверхностях в областях пространства вокруг пользователя, указанных в приложении. Объявляйте возможность spatialPerception только в том случае, если приложение будет явно использовать сетки поверхностей, так как для голографической отрисовки в зависимости от положения головы пользователя эта функция в приложениях смешанной реальности не требуется. |
Глобальное управление мультимедиа | Функция globalMediaControl позволяет приложениям получать доступ к сеансам воспроизведения во всей системе, интегрированной с SystemMediaTransportControls, чтобы предоставлять сведения о воспроизведении и разрешить удаленное управление. Эта возможность требуется для использования некоторых API-интерфейсов в пространстве имен Windows.Media.Control. Эта возможность определяется в элементе uap7:capability. |
Захват графики | Возможность graphicsCapture позволяет приложениям получать или отображать снимки экрана окон, когда это разрешено пользователем. Эта возможность требуется для работы с объектом Windows.Graphics.Capture.GraphicsCapturePicker. Эта возможность определяется в элементе uap6:Capability. |
Захват графики без границ | Возможность graphicsCaptureWithoutBorder позволяет приложениям получать снимки экрана без отображения рамки на снимке экрана или окна. Эта возможность требуется для работы со свойством Windows.Graphics.Capture.GraphicsCaptureSession.IsBorderRequired. Эта возможность определяется в элементе uap11:Capability. |
Захват графики программными средствами | Возможность graphicsCaptureProgrammatic позволяет приложениям самостоятельно получать или отображать снимки экрана разных окон. Эта возможность требуется для создания объекта Windows.Graphics.Capture.GraphicsCaptureItem из WindowId или DisplayId. Эта возможность определяется в элементе uap11:Capability. |
Возможности устройства
Возможности устройств позволяют вашему приложению получить доступ к периферийным и внутренним устройствам. Возможности устройства указываются с помощью элемента DeviceCapability в манифесте пакета приложения. Этот элемент может требовать дополнительных дочерних элементов, а некоторые возможности устройства необходимо добавлять в манифест пакета вручную. Дополнительные сведения см. в разделах Определение возможностей устройств в манифесте пакета и Справочник по схеме DeviceCapability.
Примечание
В элементе Capabilities в манифесте пакета может быть несколько элементов DeviceCapability. Все элементы DeviceCapability должны располагаться после любого элемента Capability и CustomCapability.
Сценарий возможности | Использование возможности |
---|---|
Расположение* | Возможность location предоставляет доступ к функции определения расположения, которая поступает со специального оборудования (например, с датчика GPS в компьютере) или использует сведения из доступной сети. Приложения должны обрабатывать ситуации, когда пользователь отключает услуги по определению расположения с помощью чудо-кнопки Параметры. |
Микрофон | Возможность microphone предоставляет доступ к аудиоканалу микрофона, что позволяет приложению осуществлять запись с подключенных микрофонов. Приложения должны обрабатывать ситуации, когда пользователь отключает микрофон с помощью чудо-кнопки Параметры. |
Близкое взаимодействие | Возможность proximity позволяет нескольким близко расположенным устройствам взаимодействовать друг с другом. Данная характеристика обычно используется в казуальных многопользовательских играх, а также в приложениях, обменивающихся информацией. Устройства стремятся использовать технологии связи, предоставляющие наилучшее из возможных подключений, включая Bluetooth, Wi-Fi и Интернет. Эта возможность используется только для установки связи между устройствами. |
Веб-камера | Возможность webcam предоставляет доступ к видеоканалу встроенной камеры или внешней веб-камеры, благодаря чему приложение может захватывать фотографии и видео. В Windows приложения должны справляться с ситуациями, когда пользователь отключает камеру с помощью чудо-кнопки Параметры. Возможность webcam предоставляет доступ только к потоку видео. Для предоставления доступа и к потоку аудио, нужно добавить возможность microphone. |
USB | Возможность устройства usb разрешает доступ к API в пространстве имен Windows.Devices.Usb. Дополнительные сведения см. в разделе Обновление пакета манифеста приложения для устройства USB. |
Устройство HID | Возможность устройства humaninterfacedevice разрешает доступ к API в пространстве имен Windows.Devices.HumanInterfaceDevice. Подробнее: Определение возможностей устройств для HID. |
POS-терминал | Возможность устройства pointOfService разрешает доступ к API в пространстве имен Windows.Devices.PointOfService. Это пространство имен обеспечивает доступ к сканерам штрихкодов и считывателям магнитных карт на терминалах точек обслуживания (POS). Пространство имен предоставляет независимый от поставщика интерфейс для доступа из приложения UWP к POS-устройствам разных изготовителей. |
Bluetooth | Возможность устройства bluetooth позволяет приложениям обмениваться данными со связанными Bluetooth-устройствами по протоколам Generic Attribute (GATT) и Classic Basic Rate (RFCOMM). Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.Bluetooth. |
Сети Wi-Fi | Возможность устройства wiFiControl позволяет приложениям сканировать сети Wi-Fi и подключаться к ним. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.WiFi. |
Состояние радиоканала | Возможность устройства radios позволяет приложениям переключать радиосвязь Wi-Fi и радиомодуль Bluetooth. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.Radios. |
Оптический диск | Возможность устройства optical предоставляет приложениям доступ к функциям на оптических дисках, таких как CD, DVD и Blu-ray. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.Custom. |
Активность движения | Возможность устройства activity позволяет приложениям обнаруживать текущее перемещение устройства. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.Sensors. |
Последовательное соединение | Возможность устройства serialcommunication предоставляет доступ к API в пространстве имен Windows.Devices.SerialCommunication, позволяя приложению для Windows установить связь с устройством, предоставляющим последовательный порт или какую-либо абстракцию последовательного порта. Эта возможность требуется для использования некоторых API-интерфейсов в пространстве имен Windows.Devices.SerialCommnication. |
Устройство отслеживания взгляда | Возможность gazeInput позволяет приложениям отслеживать, куда в пределах приложения смотрит пользователь, когда подключено совместимое устройство отслеживания взгляда или используется устройство Смешанной реальности, которое поддерживает отслеживание взгляда. Эта возможность требуется для использования некоторых API-интерфейсов в пространстве имен Windows.Devices.Input.Preview. Для устройств Смешанной реальности эта возможность требуется для интерфейсов API в Windows.Perception.People.EyesPose. |
GPIO, I2C, SPI и PWM | Возможность lowLevel устройства предоставляет доступ к устройствам GPIO, I2C, SPI и PWM. Эта возможность необходима для использования API-интерфейсов в следующих пространствах имен: Windows.Devices.Gpio, Windows.Devices.I2c, Windows.Devices.Spi и Windows.Devices.Pwm.<Capabilities><DeviceCapability Name="lowLevel"/></Capabilities> |
Задачи по работе с данными пользователя | Возможность устройства **userDataTasks" предоставляет доступ к интерфейсам API в пространство имен Windows.ApplicationModel.UserDataTasks, которое в свою очередь предоставляет доступ элементам задач, которые хранятся в Exchange ActiveSync (EAS) и приложениях сторонних поставщиков в среде Windows. |
Прослушиватель уведомлений | Возможность устройства **userNotificationListener" предоставляет доступ к интерфейсам API в пространстве имен in the Windows.UI.Notifications.Management, которое позволяет управлять уведомлениями пользователей. |
Ограниченные возможности
Если в приложении объявлены какие-либо ограниченные возможности, необходимо предоставить соответствующие сведения во время отправки приложения, чтобы пройти процесс утверждения для публикации приложения в Microsoft Store. Эти сведения можно указать на странице Submission options (Варианты отправки), объяснив, как приложение использует каждую ограниченную возможность, которая в нем объявлена.
Важно!
Ограниченные возможности предназначены для конкретных сценариев. Использование этих возможностей весьма ограничено, они проверяются на соответствие требованиям политики выставления Магазина и анализируются дополнительно. Обратите внимание, что загружать неопубликованные приложения с ограниченными возможностями можно без получения утверждения. Утверждение требуется только при отправке этих приложений в Store.
Объявляйте ограниченные возможности, только если они действительно нужны в вашем приложении. Они могут использоваться в банковских операциях с двухфакторной проверкой подлинности, а также в ситуациях, при которых пользователям выдается смарт-карта с цифровым сертификатом, подтверждающим их личность. Другие приложения могут первоначально предназначаться для корпоративных клиентов. Таким приложениям нужен доступ к корпоративным ресурсам с учетными данными пользователя домена.
Чтобы объявить ограниченную возможность, измените исходный файл манифеста пакета приложения (Package.appxmanifest
). Добавьте объявление пространства имен XML xmlns:rescap и используйте префикс rescap при объявлении ограниченной возможности. Например, вот как объявить возможность appCaptureSettings:
<?xml version="1.0" encoding="utf-8"?>
<Package
...
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="... rescap">
...
<Capabilities>
<rescap:Capability Name="appCaptureSettings"/>
</Capabilities>
</Package>
Примечание
Все элементы ограниченной возможности должны находиться перед любым элементом CustomCapability и DeviceCapability в узле Capabilities в манифесте пакета.
Процедура утверждения ограниченной возможности
Раньше для утверждения использования возможности требовалось обратиться в службу поддержки. Теперь предоставить эту информацию можно на панели мониторинга в Центре партнеров в процессе отправки.
При передаче пакетов в вашей отправке мы определим, объявлены ли какие-либо ограниченные возможности. Если они есть, вам потребуется предоставить подробную информацию о том, как каждая из этих возможностей используется в продукте. Сделать это можно на странице Submission options (Варианты отправки). Предоставьте как можно более подробную информацию, чтобы мы могли понять, почему в вашем продукте необходимо объявить эту возможность. Обратите внимание, что в этом случае сертификация вашей отправки может занять больше времени.
В процессе сертификации наши тест-инженеры изучат предоставленную информацию, чтобы определить, утвердить ли использование соответствующей возможности в вашей отправке. Обратите внимание, что в этом случае сертификация вашей отправки может занять больше времени. Если мы утвердим использование вами этой возможности, процедура сертификации вашего приложения будет продолжена. Как правило, не требуется повторять процедуру утверждения возможности при отправке обновлений приложения (за исключением случаев, когда объявляются дополнительные возможности).
Если мы не утвердим использование вами соответствующей возможности, отправка не пройдет сертификацию и мы предоставим вам обратную связь в отчете о сертификации. Вы также можете создать другую отправку и передать пакеты, в которых не объявлена эта возможность или, если применимо, устранить все проблемы, связанные с использованием этой возможности, и запросить утверждение в новой отправке.
Примечание
Если в отправке используется песочница разработки в Центре партнеров (так происходит, например, с любой игрой, интегрируемой с Xbox Live), необходимо заранее запросить утверждение, а не предоставлять информацию на странице Submission options (Варианты отправки). Для этого посетите страницу поддержки разработчиков для Windows. Выберите раздел поддержки разработчиков Dashboard issue (Панель мониторинга проблем), тип проблемы Отправки приложений и подкатегорию Другое. Затем опишите, как используется возможность и почему она необходима для вашего продукта. Если вы не предоставите все необходимые сведения, ваш запрос будет отклонен. Вам также можете быть предложено предоставить дополнительные сведения. Обратите внимание, что этот процесс обычно занимает пять рабочих дней или более, поэтому отправляйте запросы заблаговременно.
Вы также можете использовать этот метод запроса утверждения (вместо предоставления этой информации во время отправки) независимо от того, используете ли вы песочницу разработки, если вы предпочитаете получить утверждение для использования ограниченной возможности, прежде чем начать отправку.
Список ограниченных возможностей
В следующей таблице перечислены ограниченные возможности. Можно запросить разрешение на использование этих возможностей в приложениях, которые вы отправляете в Store, выполнив процедуру выше.
Важно!
Некоторые из этих ограниченных возможностей практически никогда не утверждаются для приложений, отправляемых в Store (только в очень специфических и ограниченных обстоятельствах). Эти возможности перечислены в таблице ниже. Не рекомендуется объявлять эти возможности в приложении, которое вы планируете распространять через Store.
Сценарий возможности | Использование возможности |
---|---|
Функции корпоративного уровня | Учетные данные домена Windows позволяют пользователю входить на удаленные ресурсы при помощи учетных данных и действовать так, как будто он предоставил имя пользователя и пароль. Возможность enterpriseAuthentication обычно используется в бизнес-приложениях, которые подключаются к серверам предприятия. Эта возможность не обязательна для обычной передачи данных через Интернет. Возможность enterpriseAuthentication предназначена для поддержки стандартных бизнес-приложений. Не объявляйте ее в приложениях, которым не требуется доступ к корпоративным ресурсам. Возможность file picker предоставляет надежный механизм пользовательского интерфейса, позволяющий пользователям открывать файлы в сетевой папке для использования в приложении. Возможность enterpriseAuthentication следует объявлять, только если по сценарию работы приложения требуется программный доступ и его невозможно предоставить, используя средство выбора файлов. Возможность enterpriseAuthentication должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="enterpriseAuthentication"/></Capabilities> Возможность enterpriseDataPolicy позволяет приложениям обрабатывать корпоративные данные отдельно и безопасно, когда управление приложением осуществляется с помощью политики Windows Information Protection (например, системы управления мобильными устройствами и мобильными приложениями). Объявите эту ограниченную возможность, как показано ниже. <Capabilities><rescap:Capability Name="enterpriseDataPolicy"/></Capabilities> Эта возможность необходима, чтобы использовать все члены следующих классов. |
Общие сертификаты пользователей | Возможность sharedUserCertificates позволяет приложению добавлять программные и аппаратные сертификаты и получать к ним доступ в общем для пользователей хранилища, например к сертификатам, хранящимся на смарт-карте. Эта возможность обычно используется для финансовых или корпоративных приложений, требующих проверки подлинности с помощью смарт-карты. Возможность sharedUserCertificates должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="sharedUserCertificates"/></Capabilities> |
Документы* | Возможность documentsLibrary разрешает программный доступ к библиотеке документов пользователя, отфильтрованной по сопоставлениям типов файлов, объявленных в манифесте пакета. Например, если для приложения для обработки текстов объявлено сопоставление типов файлов с расширением DOC, оно сможет открывать DOC-файлы из библиотеки документов пользователя. Возможность documentsLibrary требуется, только если приложение программным способом обращается к библиотеке документов без вмешательства пользователя. Приложению не требуется возможность documentsLibrary для получения доступа к библиотеке документов, если пользователь выбрал ее с помощью API средства выбора. Как правило, приложения должны разрешать пользователю выбирать расположение файлов с помощью одного из следующих API средства выбора:
В случаях, когда в существующих рабочих процессах предполагается, что файлы находятся в библиотеке документов (например, при взаимодействии с существующим настольным приложением) или если вам не нужно, чтобы пользователь выбирал расположение, вы можете объявить возможность documentsLibrary для своего приложения. Если в вашем приложении используется возможность documentsLibrary, рекомендуется также разрешить пользователю выбирать расположение вручную. Возможность documentsLibrary должна содержать пространство имен uap при объявлении ее в манифесте пакета приложения, как показано ниже. <Capabilities><uap:Capability Name="documentsLibrary"/></Capabilities> |
Параметры DVR игры | Возможность с ограниченным доступом appCaptureSettings позволяет приложениям управлять параметрами пользователя для Game DVR. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Media.Capture. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Мобильная связь | Возможность с ограниченным доступом cellularDeviceControl позволяет приложениям контролировать сотовое устройство. Возможность cellularDeviceIdentity предоставляет приложениям доступ к сотовым идентификационным данным. Возможность cellularMessaging позволяет приложениям использовать SMS и RCS. Эти возможности требуются для использования некоторых API в пространстве имен Windows.Devices.Sms. |
Разблокировка устройства | Возможность с ограниченным доступом deviceUnlock позволяет приложениям снимать блокировку устройства для сценариев загрузки неопубликованного приложения разработчика и неопубликованных корпоративных приложений. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Плитки двойной SIM-карты | Возможность с ограниченным доступом dualSimTiles позволяет приложениям создавать дополнительную запись списка приложений на устройствах с несколькими SIM-картами. Эта возможность требуется для использования некоторых API в пространстве имен Windows.UI.StartScreen. |
Общее корпоративное хранилище | Возможность с ограниченным доступом enterpriseDeviceLockdown позволяет приложениям использовать API блокировки устройства и предоставляет им доступ к корпоративным папкам общего хранилища. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Вставка системного ввода | Возможность с ограниченным доступом inputInjectionBrokered позволяет приложениям внедрять различные формы ввода, такие как сенсорный ввод, ввод с помощью HID, пера, клавиатуры или мыши, в систему программным путем. Обычно данная возможность используется в приложениях совместной работы, которые могут управлять системой. Для компьютера внедрение ввода из приложения с этой возможностью обеспечивается только процессами, которые относятся к одному контейнеру приложения. <Capabilities><rescap:Capability Name="inputInjectionBrokered" /></Capabilities> |
Проверка ввода* | Возможность с ограниченным доступом inputObservation позволяет приложениям проверять различные формы необработанных входных данных (например, HID, сенсорный ввод, перо, клавиатура или мышь), получаемых системой, независимо от конечного места назначения. Эта возможность и API-интерфейсы, связанные с ней, доступны только для использования выбранными партнерами Майкрософт. |
Подавление ввода | Возможность с ограниченным доступом inputSuppression позволяет приложениям подавлять получение различных форм необработанных входных данных (например, HID, сенсорный ввод, перо, клавиатура или мышь) системой. Эта возможность и API-интерфейсы, связанные с ней, доступны только для использования выбранными партнерами Майкрософт. |
Приложение VPN | Возможность с ограниченным доступом networkingVpnProvider предоставляет приложениям полный доступ к функциям VPN, включая возможность управлять подключениями и обеспечивать функциональность подключаемого модуля VPN. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Networking.Vpn. |
Управление другими приложениями | Возможность с ограниченным доступом packageManagement позволяет приложениям управлять другими приложениями напрямую. Возможность устройства packageQuery позволяет приложениям собирать сведения о других приложениях. Эти возможности требуются для доступа к некоторым методам и свойствам в классе PackageManager. |
Проецирование экрана | Возможность с ограниченным доступом screenDuplication позволяет приложениям проецировать экран на другое устройство. Эта возможность требуется для использования API в пространстве имен DirectX. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Имя участника-пользователя | Ограниченная возможность userPrincipalName позволяет приложениям получать доступ к имени участника-пользователя (UPN) текущего пользователя. Эта возможность требуется для вызова функции GetUserNameEx. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Бумажник | Возможность с ограниченным доступом walletSystem позволяет приложениям получать полный доступ к сохраненным картам для бумажника. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Wallet.System. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Журнал местоположений | Возможность с ограниченным доступом locationHistory позволяет приложениям получать доступ к журналу расположения устройства. Эта возможность требуется для использования некоторых API в пространстве имен Windows.Devices.Geolocation. |
Подтверждение закрытия приложения | Возможность ограниченным доступом confirmAppClose позволяет приложениям закрываться и закрывать свои окна, а также задерживать закрытие приложения. Для приложений можно запрашивать использование этой функции в Windows 10 версии 1703 (сборка 10.0.15063) и более поздних. В предыдущих версиях Windows 10 эта возможность была закрытой, а установка приложения завершалась сбоем с сообщением об ошибке "The requested capability can not be authorized for this application." (Запрошенная возможность не может быть авторизована для этого приложения.). |
Журнал вызовов* | Возможность с ограниченным доступом phoneCallHistory позволяет приложениям читать журнал вызовов и удалять записи в журнале. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Chat. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к встречам системного уровня | Возможность ограниченным доступом appointmentsSystem позволяет приложениям читать и изменить все встречи в календаре пользователя. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Appointment. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к сообщениям чата системного уровня* | Возможность с ограниченным доступом chatSystem позволяет приложениям читать и писать все SMS- и MMS-сообщения. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Chat. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к контактам системного уровня | Возможность ограниченным доступом contactsSystem позволяет приложениям читать контактные данные, которые были обозначены как данные с ограниченным доступом или конфиденциальные, и изменять существующие контактные данные. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Chat. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к электронной почте | Возможность с ограниченным доступом email позволяет приложениям читать, рассматривать и отправлять электронные сообщения пользователя. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Email. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к электронной почте системного уровня | Возможность ограниченным доступом emailSystem позволяет приложениям читать, рассматривать и отправлять электронные сообщения пользователя с ограниченным доступом или конфиденциальные сообщения. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Email. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Доступ к журналу вызовов системного уровня | Возможность с ограниченным доступом phoneCallHistorySystem позволяет приложениям полностью изменять журнал вызовов путем изменения существующих записей и записи новых. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Calls. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Отправка текстовых сообщений* | Возможность с ограниченным доступом smsSend позволяет приложениям отправлять SMS- и MMS-сообщения. Эта возможность требуется для использования некоторых API в пространстве имен Windows.ApplicationModel.Chat. |
Доступ системного уровня ко всем данным пользователя | Возможность с ограниченным доступом userDataSystem предоставляет приложениям доступ к данным пользователя в хранилище системных данных. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Функции предварительного просмотра Магазина | Возможность с ограниченным доступом previewStore позволяет приложениям получать и приобретать SKU продуктов из приложения. Эта возможность требуется для использования определенных API в пространстве имен Windows.ApplicationModel.Store.Preview. |
Параметры первого входа | Возможность с ограниченным доступом firstSignInSettings позволяет приложениям получать доступ к настройкам пользователя, которые были установлены во время первого входа пользователя на устройство. |
Интерфейс команды разработчиков Windows | Возможность с ограниченным доступом teamEditionExperience позволяет приложениям получать доступ ко внутренним API, которые контролируют многие экспериментальные аспекты сеанса Windows Team. Сеанс Windows Team, вероятнее всего, запущен на устройстве группы, например, Microsoft Surface Hub. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Удаленная разблокировка | Возможность с ограниченным доступом remotePassportAuthentication позволяет приложениям получать доступ к учетным данным, которые могут использоваться для разблокировки удаленного ПК. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Композиция предварительного просмотра | Возможность с ограниченным доступом previewUiComposition позволяет приложениям предварительно просматривать пространство имен Windows.UI.Composition для интерфейса пользователя, чтобы можно было предоставить отзыв по API до завершения его работы. Для получения дополнительных сведений пишите по адресу wincomposition@microsoft.com. |
Блокировка безопасной оценки | Возможность с ограниченным доступом secureAssessment позволяет приложениям заблокировать Windows в одном режиме приложения для обеспечения безопасности оценок. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Подготовка диспетчера подключений | Возможность с ограниченным доступом networkConnectionManagerProvisioning позволяет приложениям определять политики, которые связывают устройство с интерфейсами беспроводных сетей и беспроводных глобальных сетей. Приложения, использующие эту возможность, создаются мобильными операторами для администрирования устройств, подключенных к их мобильным сетям. |
Подготовка тарифного плана | Возможность с ограниченным доступом networkDataPlanProvisioning позволяет приложениям собирать сведения о тарифных планах на устройстве и считывать трафик. Приложения, использующие эту возможность, создаются мобильными операторами, чтобы интегрировать фактический трафик своих клиентов в параметр трафика операционной системы. |
Лицензирование ПО | Возможность с ограниченным доступом slapiQueryLicenseValue позволяет приложениям запрашивать политики лицензирования программного обеспечения. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Расширенное выполнение | Возможность с ограниченным доступом extendedBackgroundTaskTime препятствует отмене или завершению фоновых задач из-за ограничений по времени выполнения. Они по-прежнему попадают под все остальные ограничения по использованию памяти и энергии. Эта возможность может быть ограничена параметрами использования заряда батареи и фоновых задач в приложении. Обратите внимание, что пользователи и администраторы по-прежнему могут управлять фоновыми задачами с помощью параметров групповой политики. Возможность с ограниченным доступом extendedExecutionBackgroundAudio позволяет приложениям воспроизводить аудио, когда приложения не запущены на переднем плане. Возможность с ограниченным доступом extendedExecutionCritical позволяет приложениям начинать критичный расширенный сеанс выполнения. Возможность с ограниченным доступом extendedExecutionUnconstrained позволяет приложениям начинать неограниченный расширенный сеанс выполнения. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. Дополнительные сведения об использовании расширенного сеанса выполнения, когда работа приложения приостановлена, см. в статье Задержка приостановки приложения с расширенным сеансом выполнения. |
Управление мобильными устройствами (MDM) | Возможность с ограниченным доступом deviceManagementDmAccount позволяет приложениям готовить и настраивать учетные записи MO OMA-DM. Возможность с ограниченным доступом deviceManagementFoundation позволяет приложениям получать базовый доступ к инфраструктуре поставщика услуг конфигурации (CSP) управления мобильными устройствами (MDM) на устройстве. Обратите внимание, что другие возможности необходимы для получения доступа к конкретным CSP. Возможность с ограниченным доступом deviceManagementWapSecurityPolicies позволяет приложениям настраивать службы протокола на основе WAP, например, MM, индикацию служб/загрузку служб (SI/SL) и OMA-CP. Возможность с ограниченным доступом deviceManagementEmailAccount позволяет приложениям, созданным мобильными операторами, добавлять учетную запись электронной почты на устройства, которые они готовят для пользователей, и управлять ими. |
Управление политикой пакета | Возможность с ограниченным доступом packagePolicySystem позволяет приложениям контролировать политики системы, связанные с приложениями, установленными на устройстве. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Список игр | Возможность с ограниченным доступом gameList позволяет приложениям получать список известных игр, установленных в системе. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Приложение Xbox | Возможность с ограниченным доступом xboxAccessoryManagement позволяет приложениям напрямую управлять устройствами Xbox, соответствующими спецификациям оборудования Xbox. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Распознавание речи для стандартных программ | Возможность с ограниченным доступом cortanaSpeechAccessory позволяет приложениям вызывать и передавать команды в Кортану. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Вспомогательное управление | Ограниченная возможность accessoryManager позволяет приложениям регистрироваться в качестве дополнительного приложения и подписываться на конкретные уведомления приложений, поэтому их можно переадресовывать в меню стандартных приложений и отображать для пользователя. |
Доступ к драйверу | Возможность с ограниченным доступом interopServices позволяет приложениям взаимодействовать непосредственно с драйверами. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Наблюдение переднего плана | Возможность с ограниченным доступом inputForegroundObservation позволяет приложениям на переднем плане перехватывать ввод с клавиатуры и обходит всю обработку ввода с клавиатуры не из приложения. Специальные сочетания клавиш (SAS) не могут быть перехвачены этой возможностью. Эта возможность необходима для получения доступа ко всем членам класса KeyboardDeliveryInterceptor. |
Приложения партнеров изготовителей оборудования и операторов мобильной связи | Возможность с ограниченным доступом oemDeployment позволяет приложениям, созданным партнерами корпорации Майкрософт устанавливать новые приложения и отправлять запросы установленным в данный момент приложениям на устройстве. Возможность с ограниченным доступом oemPublicDirectory позволяет приложениям, созданным партнерами корпорации Майкрософт, получать доступ к общей папке приложения. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Лицензирование приложений | Возможность с ограниченным доступом appLicensing разрешает запуск приложений без лицензии. Если вы объявите эту возможность в манифесте, то не сможете отправить свое приложение в магазин. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Система определения расположения | Возможность с ограниченным доступом locationSystem позволяет приложениям вносить определенные привилегированные изменения в настройки расположения, такие как установка расположения по умолчанию для устройства. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Поставщик пользовательских данных учетных записей | Возможность userDataAccountsProvider с ограниченным доступом позволяет приложениям полностью управлять учетными записями почты, календаря и контактов. |
Рабочее пространство пера | Возможность previewPenWorkspace позволяет приложению получить доступ к пространству имен Windows.ApplicationModel.Preview.Notes для размещения в рабочей области пера в качестве обработчика действия запоминания. |
Вспомогательный фактор проверки подлинности | Возможность secondaryAuthenticationFactor позволяет приложению разблокировать компьютер, передав хранилище секретов с устройства проверки подлинности поблизости. Например, для разблокировки компьютера можно использовать фитнес-браслет. Эта возможность необходима, чтобы получить доступ к API-интерфейсам в пространстве имен Windows.Security.Authentication.Identity.Provider. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Управление лицензиями магазина | Возможность storeLicenseManagement позволяет приложениям-концентраторам партнеров Майкрософт управлять лицензиями магазина на устройстве. Эта возможность требуется для доступа к определенным API в пространстве имен Windows.ApplicationModel.Store.LicenseManagement. |
Системный идентификатор пользователя | Возможность userSystemId позволяет приложению получить системный идентификатор пользователя. Этот идентификатор уникально определяет текущего пользователя в конкретной системе и может использоваться для согласования сведений в разных приложениях. Эта возможность необходима, чтобы получить доступ к API-интерфейсу GetUserSpecificSystemId в классе Windows.System.Profile.SystemIdentification. |
Целевое содержимое | Возможность targetedContent позволяет приложению получать и использовать целевое содержимое подписки, предоставляемое пространством имен Windows.Services.TargetedContent. Эта возможность требуется для использования некоторых API-интерфейсов в пространстве имен Windows.System.Profile.SystemIdentification. |
Модель автоматизации пользовательского интерфейса | Возможность uiAutomation позволяет клиенту модели автоматизации пользовательского интерфейса, например экранному диктору, подключиться к серверу или к поставщику модели автоматизации пользовательского интерфейса. Эта возможность требуется для использования некоторых API-интерфейсов в пространстве имен Windows.Xbox.Media.Capture.Broadcaster. |
Службы меню игры | Возможность gameBarServices ограничивается UWA обновляемой папки "Входящие" в магазине первой стороны. Эта возможность необходима, чтобы использовать класс Windows.Media.Capture.GameBarsSrvices. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Службы захвата приложений | Возможность appCaptureServices доступна только сторонам, имеющим договорные взаимоотношения с корпорацией Майкрософт. Эти взаимоотношения строятся на основе партнерских соглашений, которые диктуются службами Xbox и BizDev. Эта возможность необходима, чтобы использовать класс Windows.Media.Capture.AppCaptureServices. |
Службы трансляции приложений | Возможность appBroadcastServices доступна только сторонам, имеющим договорные взаимоотношения с корпорацией Майкрософт. Эти взаимоотношения строятся на основе партнерских соглашений, которые диктуются службами Xbox. Эта возможность необходима, чтобы использовать класс Windows.Media.capture.AppBroadcastServices. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Аудиоконфигурация устройства | Возможность audioDeviceConfiguration позволяет приложению запрашивать, настраивать, включать и отключать звуковые эффекты, предоставляемые аудиодрайвером. Эта возможность необходима, чтобы использовать класс Windows.Media.Devices.AudioDeviceModulesManager. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. Это связано с тем, что AudioDeviceModulesManager позволяет приложению получать доступ ко всем звуковым эффектам в заданной системе. Потенциально звуковые эффекты могут быть настроены, негативно воздействуя на воспроизведение звука на устройстве. |
Запись мультимедиа в фоновом режиме | Возможность backgroundMediaRecording меняет поведение API-интерфейсов для работы с мультимедиа, таких как классы MediaCapture и AudioGraph, чтобы ваши приложения могли записывать мультимедиа в фоновом режиме. |
Просмотр рабочей области рукописного текста | Возможность previewInkWorkspace позволяет приложению получать доступ к пространству имен Preview Ink, располагающемуся внутри рабочей области рукописного ввода. По большому счету она используется изготовителем оборудования для замены приложения доски на устройстве. Эта возможность требуется для API-интерфейсов в пространстве имен Windows.ApplicationModel.Preview.InkWorkspace. |
Управление начальным экраном | Возможность startScreenManagement позволяет приложениям закреплять плитки на начальном экране. Приложения также можно закрепить в фоновом режиме. Отсутствие возможности startScreenManagement не блокирует API-интерфейсы. Скорее применение startScreenManagement означает, что при использовании API-интерфейсов для закрепления оболочка не будет показывать пользовательский интерфейс. |
Разрешения Кортаны | Возможность cortanaPermissions позволяет приложению перечислить разрешения, предоставленные пользователем для Кортаны на данном устройстве. Эта возможность также позволяет приложению предоставлять и отменять разрешения для Кортаны на устройстве. Обратите внимание, что для использования cortanaPermissions необходимо, чтобы устройство выводило юридический текст перед предоставлением разрешений. Фактически, приложение обязано проинформировать пользователя о юридических последствиях изменения разрешений. Эта возможность требуется для получения доступа на чтение параметров реестра HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search\ . Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Все режимы приложений | Возможность allAppMods позволяет приложению получить доступ к папке AppMods для всех приложений. Служебные программы управления режимами используют allAppMods для управления режимами за пределами использующих их игр или приложений. |
Расширенные ресурсы | Возможность expandedResources позволяет приложению получить доступ к ресурсам режима игры. На Xbox, а также на компьютерах, отвечающих соответствующей линейке, ресурсы режима игры представляют собой подмножество доступных ядер ЦП, которые зарезервированы для использования исключительно приложением. На Xbox приложение также имеет исключительное право использования раздела памяти размером не менее 4 ГБ. Эта возможность требуется, чтобы получить исключительное право использования ресурсов ЦП и памяти, как указано выше. |
Защищенное приложение | Возможность protectedApp дает возможность загрузки приложения в магазин в защищенном процессе. Когда приложение попадает в магазин, магазин добавляет в исполняемый файл большой двоичный объект. Магазин также подписывает страницу исполняемого файла с использованием ключа Майкрософт. Загрузчик процесса проверяет скорее этот большой двоичный объект, а не возможность применить защищенный процесс, так как большому двоичному объекту необходима подпись корпорации Майкрософт. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Монитор игры | Возможность gameMonitor приводит к тому, что система использует активный мониторинг, чтобы определить мошеннические действия со стороны приложения. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Диагностика приложений | Возможность appDiagnostics позволяет приложению получать сведения диагностики (например, данные о пакете, использовании памяти и имени учетной записи) для любого другого запускаемого приложения UWP. Возвращаемые сведения включают в себя имя учетной записи домена или компьютера, под которой работает приложение. Если вызывающее приложение запущено с правами администратора, то оно может получить список всех запущенных приложений для всех учетных записей на компьютере. Эта возможность необходима, чтобы использовать классы Windows.System.AppDiagnosticInfo, Windows.System.AppDiagnosticInfo.RequestAppDiagnosticInfoAsync и Windows.ApplicationModel.AppInfo. |
Поставщики портала устройств | Возможность devicePortalProvider позволяет приложениям вызывать API-интерфейсы Windows.System.Diagnostics.DevicePortal и предоставляет веб-сервер для диагностического инструментария во время работы в режиме разработчика. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Единый вход в Enterprise Cloud | Благодаря возможности enterpriseCloudSSO приложения могут осуществлять единый вход, используя ресурсы Azure Active Directory (AAD) внутри размещенного элемента управления веб-представления. |
Автоматический прием вызовов VoIP | Функция backgroundVoIP позволяет автоматически получать и принимать входящие вызовы VoIP, не требуя от пользователя явного принятия вызова. Приложения, использующие эту возможность, получают полный контроль над камерой и микрофоном и могут использовать эти ресурсы в фоновом режиме. Не рекомендуется объявлять эту возможность в приложениях, отправляемых в Microsoft Store. Для большинства разработчиков использование этой возможности утверждено не будет. |
Резервирование ресурсов для вызовов VoIP | Возможность oneProcessVoIP позволяет резервировать ресурсы процессора и памяти, необходимые для вызовов VoIP в приложении с одним процессом. Не рекомендуется объявлять эту возможность в приложениях, отправляемых в Microsoft Store. Для большинства разработчиков использование этой возможности утверждено не будет. |
Сеть режима разработки | Возможность developmentModeNetwork позволяет приложениям осуществлять доступ к сетевым путям, используя учетные данные выполнившего вход пользователя, при вызове API Win32 OpenFile в приложении UWP, созданном с использованием расширения C++/CX, или в компоненте среды выполнения Windows, созданном на языке C++. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Широкий доступ к файловой системе | Функция broadFileSystemAccess позволяет приложениям получать такой же доступ к файловой системе, что и пользователь, который сейчас работает в приложении, без дополнительных запросов средства выбора файлов во время выполнения. Важно отметить, что эта возможность не требуется для доступа к файлам, которые пользователь уже выбрал с помощью возможностей FilePicker или FolderPicker. Эта возможность работает с API-интерфейсами Windows.Storage. Так как пользователи могут предоставить или отменить разрешение в любой момент в разделе "Параметры", следует убедиться, что приложение устойчиво к этим изменениям. В обновлении за апрель 2018 года по умолчанию это разрешение включено. В обновлении октябрь 2018 по умолчанию оно отключено. Важно не объявлять вместе с этой возможностью никакие возможности для отдельной папки, такой как Документы, Изображения или Видео. Эту возможность можно включить в приложении, добавив broadFileSystemAccess в манифест. Пример см. в статье Разрешения на доступ к файлам. В большинстве случаев для получения доступа к расположения в файловой системе приложение может использовать API FileOpenPicker, FileSavePicker, FolderPicker и FutureAccessList. Если вы хотите запросить утверждение для использования возможности broadFileSystemAccess, необходимо указать конкретные причины, по которым эти API не подходят для ваших нужд. Примечание. Эта возможность не поддерживается в Xbox. |
Встроенное ПО системы и BIOS | Возможность smbios предоставляет приложениям доступ к данным о BIOS и встроенном ПО системы. |
Уровень разрешений полного доверия | Это ограниченная возможность runFullTrust . Термины определены ниже, но вкратце, пакет нуждается в этой возможности, если пакет использует функции, для которых требуется полное доверие. Распространенным примером является пакет, содержащий одно или несколько приложений с полным доверием. Возможность с ограниченным доступом runFullTrust позволяет устанавливать на компьютере подобный пакет. Приложение с полным доверием — это приложение, которое устанавливает для mediumIL uap10:TrustLevel (см. элемент Application). Приложение с полным доверием имеет процесс, который выполняется с уровнем целостности среднего уровня (см. раздел Обязательный контроль целостности). Пакет является пакетом .appx или MSIX (см. раздел Создание пакета MSIX на основе кода).Еще один пример, в котором требуется эта возможность, — пакет с категорией расширений windows.firewallRules (см. desktop2:Extension). Это считается функцией с полным доверием; и в этом примере нет приложения для активации и процесса для запуска. Чтобы использовать класс FullTrustProcessLauncher, эта возможность также является обязательной. |
Повышение прав | Ограниченная возможность allowElevation позволяет приложениям, созданным партнерами Майкрософт и компаниями, сохранять существующие функциональные возможности классического приложения, требующие автоматического повышения уровня при запуске или в течение всего срока службы приложения. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. Она будет одобрена только для бизнес-приложений, развернутых предприятиями в их частном хранилище через Microsoft Store для бизнеса. |
Учетные данные устройств команды разработчиков Windows | Ограниченная возможность teamEditionDeviceCredential позволяет приложениям получать доступ к API-интерфейсам, запрашивающим данные учетной записи устройства Surface Hub под управлением Windows 10 версии 1703 или более поздней версии. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Представление приложений для команды разработчиков Windows | Ограниченная возможность teamEditionView позволяет приложениям получать доступ к API-интерфейсам для размещения представления приложений на устройстве Surface Hub под управлением Windows 10 версии 1703 или более поздней версии. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Расширение обработки данных камеры | Ограниченная возможность cameraProcessingExtension позволяет приложениям обрабатывать изображения, снятые с помощью камеры, без прямого управления камерой. Эта возможность требуется для использования API-интерфейсов в пространстве имен Windows.Devices.PointOfService.Provider. Любой может запросить доступ к этой возможности для отправки в магазин. |
Управление использованием данных | Ограниченная возможность networkDataUsageManagement позволяет приложениям собирать информацию об использовании сетевых данных. Эта возможность необходима для вызова GetAttributedNetworkUsageAsync. Любой может запросить доступ к этой возможности для отправки в магазин. |
Управление подключением телефонной линии | Возможность phoneLineTransportManagement позволяет приложениям управлять системными устройствами, которые участвуют в подключении телефонной линии. Эта возможность требуется для использования некоторых API-интерфейсов PhoneLineTransportDevice в пространстве имен Windows.ApplicationModel.Calls. |
Невиртуализированные ресурсы | Ограниченная возможность unvirtualizedResources позволяет приложению объявить элементы RegistryWriteVirtualization и FileSystemWriteVirtualization в манифесте пакета, чтобы отключить виртуализацию реестра и файловой системы. Эти объявления не позволяют системе виртуализировать никакие записи в папке HKEY_CURRENT_USER или в папке AppData пользователя соответственно. Это полезно в сценариях, когда ваше приложение ожидает, что другие приложения будут считывать или записывать те же записи реестра или файловой системы, что и ваше приложение. Эта возможность предназначена для определенных типов игр (для настольных компьютеров), опубликованных корпорацией Майкрософт и нашими партнерами. Он также необходим для приложений, упакованных с внешним расположением (см. раздел Предоставление удостоверения пакета путем упаковки с внешним расположением). Она не предназначена для использования в других сценариях, так как это может поставить под угрозу способность системы выполнять полное удаление. |
Изменяемое приложение | Ограниченная возможность modifiableApp позволяет вашему приложению объявлять расширение windows.mutablePackageDirectories в манифесте пакета. Это позволяет указать имя папки, в которой приложение должно размещать измененные или добавленные файлы. Операционная система создаст эту папку и позволит приложению использовать файлы в ней вместо файлов, которые изначально установлены приложением. Эта возможность предназначена для определенных типов игр (для настольных компьютеров), опубликованных корпорацией Майкрософт и нашими партнерами. Она не будет предоставляться для других сценариев, так как позволяет выполнять неподписанный код. |
Оболочка совместимости перенаправления записи пакета | Ограниченная возможность packageWriteRedirectionCompatabilityShim настраивает ваше приложение для создания всех файлов в расположении для каждого пользователя. Все имеющиеся ранее файлы, открытые для записи, сначала копируются в расположение на уровне пользователя, а затем изменения происходят в файле в этом расположении. Эта возможность полезна для приложений, которые создают или изменяют файлы в папке установки. Эта возможность предназначена для определенных типов игр (для настольных компьютеров), опубликованных корпорацией Майкрософт и нашими партнерами. В некоторых случаях он может быть применим и к другим приложениям. |
Настраиваемые действия по установке | Ограниченная возможность customInstallActions позволяет приложению объявлять расширение windows.customInstall в своем манифесте пакета, чтобы оно могло указать один или несколько дополнительных файлов установщика (EXE или MSI), которые выполняются вместе с вашим приложением. Это позволяет указать настраиваемые действия для любого из стандартных сценариев развертывания: установки, обновления, восстановления или удаления. Например, это полезно для приложений, которые упаковывают распространяемый компонент стороннего производителя. Эта возможность предназначена для определенных типов игр (для настольных компьютеров), опубликованных корпорацией Майкрософт и нашими партнерами. Она не будет предоставляться для других сценариев. |
Упакованные службы | Ограниченная возможность packagedServices позволяет приложениям, созданным партнерами и корпорацией Майкрософт, объявлять расширениеwindows.service в манифесте пакета, чтобы установить одну или несколько служб вместе с приложением. Эти службы можно настроить для работы под учетными записями "Локальная служба", "Сетевая служба" или "Локальная система". Для служб "Локальная служба" и "Сетевая служба" требуется только возможность packagedServices. Службам локальной системы требуется возможность packagedServices и localSystemServices. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Службы локальной системы | Ограниченная возможность localSystemServices позволяет приложениям, созданным партнерами Майкрософт и компаниями, устанавливать одну или несколько локальных системных служб вместе с приложением (то есть ваше приложение может объявить StartAccount для служб, относящихся к LocalSystem). Для этого сценария требуется возможность packagesServices. Мы не рекомендуем объявлять эту возможность в приложениях, которые вы отправляете в Microsoft Store. В большинстве случаев использование этой возможности не будет утверждено. |
Фоновое пространственное восприятие | Ограниченная возможность backgroundSpatialPerception позволяет приложению получать доступ для распознавания движений головы и рук пользователя, контроллеров и других отслеживаемых объектов, а также к контроллеру движений во время работы приложения в фоновом режиме. |
Настраиваемые возможности
В разделе выше Ограниченные возможности описан тот же процесс утверждения возможностей, который можно использовать для запроса на утверждение использования настраиваемой возможности. API-интерфейсы встроенных SIM-карт являются примерами интерфейсов API, для которых требуется настраиваемая возможность. Если вы хотите, чтобы приложение выполнялось локально в режиме разработчика, настраиваемая возможность не требуется. Но она нужна для публикации вашего приложения в Microsoft Store или для запуска его вне режима разработчика.
Если у вас есть менеджер по технической поддержке Windows, для запроса доступа можно обратиться к нему. Дополнительные сведения см. в этом разделе.
Чтобы объявить настраиваемую возможность, измените исходный файл манифеста пакета приложений (Package.appxmanifest
). Добавьте объявление пространства имен XML xmlns:uap4 и используйте префикс uap4 при объявлении настраиваемой возможности. Рассмотрим пример.
<?xml version="1.0" encoding="utf-8"?>
<Package
...
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...
<Capabilities>
<uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>
</Capabilities>
</Package>
Примечание
Все элементы CustomCapability должны находиться после любого элемента Capability и перед элементами DeviceCapability в узле возможностей в манифесте пакета.
Сценарий возможности | Использование возможности |
---|---|
Обработчик URI приложения | Приложение может зарегистрировать себя в качестве обработчика для заданного URI, чтобы при открытии пользователем ссылки на указанный URI приложение запускалось вместо открытия браузера. Для этого требуется регистрация на локальном компьютере и проверка целевым веб-сервером. Пользовательская возможность Microsoft.delegatedWebFeatures_8wekyb3d8bbwe позволяет приложению размещать прогрессивное веб-приложение (PWA) и проверять PWA в качестве обработчика URI приложения без ссылки на целевой веб-сайт для подтверждения. |
Конфигурация SAR сотовой сети | Пользовательская возможность Microsoft.cellularSARConfiguration_8wekyb3d8bbwe позволяет приложению выполнять настройку свойств конкретной скорости поглощения (SAR) устройства. См. класс MobileBroadbandSarManager . |
Активация CoreApplication | Приложение, которое объявляет Microsoft.coreAppActivation_8wekyb3d8bbwe настраиваемую возможность, основано на CoreApplication, но должно выполняться с полным доверием, аналогично приложению мост для классических приложений. |
Пользовательские действия установки | Позволяет приложению использовать пользовательские действия установки и удаления. Приложение может использовать пользовательские действия, если оно имеет ограниченную функциюcustomInstallActions AND (это приложение MSIXVC Xbox Game Pass или имеет Microsoft.classicAppInstaller_8wekyb3d8bbwe настраиваемую возможность). |
Управление ESim | Пользовательская возможность Microsoft.eSIMManagement_8wekyb3d8bbwe позволяет приложению выполнять настройку встроенной SIM-карты устройства (eSIM). См. класс ESim . |
Устаревшие варианты установки | Пользовательская возможность Microsoft.classicAppCompat_8wekyb3d8bbwe защищает случай, когда приложение объявляет устаревшую функцию установки; например, запись пользовательских идентификаторов COM ProgId в реестре Windows. |
Установка на уровне компьютера | Защищает случай, когда приложение объявляет устаревшую функцию установки, настроенную для регистрации на уровне компьютера или HKLM, для которой требуется повышение прав. Специально требуется для всего, что находится в манифесте приложения, где приложение объявляет Scope="machine" .Например, приложению на основе MSIX, использующим элемент desktop7:ApprovedShellExtension , необходимо задать область действия компьютера и, следовательно, объявить Microsoft.classicAppCompatElevated_8wekyb3d8bbwe настраиваемую возможность. Дополнительные сведения об этом сценарии см. в разделе desktop7:ApprovedShellExtension. |
Сеть по запросу | Пользовательская возможность Microsoft.onDemandHotspotControl_8wekyb3d8bbwe (возможность сети по запросу) будет доступна только разработчикам приложений, создающим комплексные сценарии Wi-Fi хот-спотов между аппаратным устройством с поддержкой привязки и компьютером с Windows. См. класс WiFiOnDemandHotspotNetwork . |
Регистрация утвержденного расширения оболочки | См . сценарий установки на уровне компьютера . |
S-режим | Приложение, объявляющее Microsoft.requiresNonSMode_8wekyb3d8bbwe настраиваемую возможность, будет запрещено работать на устройстве с Windows в S-режиме. |
Запускаемых приложений | Приложение можно настроить для автоматического запуска при входе пользователя. Как правило, пользователь может включить или отключить это поведение для каждого приложения. Пользовательская возможность Microsoft.nonUserConfigurableStartupTasks_8wekyb3d8bbwe настраивает приложение таким образом, чтобы пользователь не мог включить или отключить его поведение при запуске. |
Windows Core 1 | Приложение, объявляющее Microsoft.deployFullTrustOnHost_8wekyb3d8bbwe настраиваемую возможность, является полностью доверенным для использования собственных API Win32 на основном устройстве Windows. |
Windows Core 2 | Приложение мост для классических приложений, объявляющее Microsoft.notSupportedInCoreV1_8wekyb3d8bbwe настраиваемую возможность, будет запрещено работать на основном устройстве с Windows. |
Windows Hello платформы сопутствующих устройств | Функциональность, связанная с Microsoft.secondaryAuthenticationFactorForLogon_8wekyb3d8bbwe настраиваемой возможностью, устарела с Windows 10 версии 2004 (10.0; Сборка 19041), и мы больше не предоставляем эту возможность учетным записям разработчиков. Приложение, объявляющее эту возможность, можно зарегистрировать на платформе сопутствующих устройств, чтобы разрешить разблокировку Windows с помощью связанного устройства-компаньона приложения. Дополнительные сведения см. в статье Разблокировка Windows с помощью Windows Hello устройств-компаньонов (IoT). |