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


DeviceCapability (Windows 10)

Объявляет возможность устройства, требуемую пакетом. В Windows 10.0.10240.0 может содержать до 100 Device. В Windows 10.0.10586.0 может содержать до 1000 (синтаксис и примеры см. примеры).

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

<Package>
   └─ <Capabilities>
      └─ <DeviceCapability>

Синтаксис

<DeviceCapability
    Name = 'A string with a value between 1 and 50 characters in length or a GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.' >

  <!-- Child elements -->
  Device{0,1000}

</DeviceCapability>

Ключ

{} конкретный диапазон вхождений

Элементы и атрибуты

Атрибуты

Атрибут Описание Тип данных Обязательный Значение по умолчанию
Имя Имя возможности устройства, указанное в виде понятного имени или GUID класса интерфейса устройства. Строка со значением от 1 до 50 символов длиной или GUID в форме xxxx-xxxx. Да

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

Дочерний элемент Описание
Device Объявляет функцию для устройства, связанного с ним DeviceCapability. В Windows 10.0.10240.0 элемент DeviceCapability может содержать до 100 Device. В Windows 10.0.10586.0 он может содержать до 1000 (дополнительные сведения см. в разделе DeviceCapability).

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

Родительский элемент Описание
Capabilities Объявляет доступ к защищенным ресурсам пользователей, которым требуется пакет. В элементе можно использовать несколько DeviceCapability элементов и элементов CapabilitiesCapability, но все DeviceCapability элементы должны поступать после элементов Capability.

Замечания

Если атрибут Name указан в качестве GUID, он проверяется как GUID.

По умолчанию приложения получают доступ к некоторым устройствам. Чтобы получить доступ к другим типам устройств, необходимо указать их с помощью DeviceCapability элемента. Некоторые возможности устройства необходимо добавить в манифест пакета вручную. Дополнительные сведения см. в разделе "Как указать возможности устройства в манифесте пакета".

Дополнительные сведения о объявлениях возможностей см. в объявлениях возможностей приложений.

Для следующих возможностей устройств требуются дочерние элементы.

Возможность устройства Описание
Usb Предоставляет доступ к API в Windows. Device.Usb пространство имен. Для этой возможности требуются дочерние элементы. Дополнительные сведения см. в статье об обновлении пакета манифеста приложения для USB-устройства.
humaninterfacedevice Предоставляет доступ к API в Windows. Devices.HumanInterfaceDevice пространство имен. Для этой возможности требуются дочерние элементы. Дополнительные сведения см. в разделе "Указание возможностей устройств для HID".
bluetooth.genericAttributeProfile Предоставляет доступ к API в Windows. Devices.Bluetooth.GenericAttributeProfile пространства имен. Для этой возможности требуются дочерние элементы. Дополнительные сведения см. в разделе "Как указать возможности устройства для Bluetooth".
bluetooth.rfcomm Предоставляет доступ к API в Windows. Devices.Bluetooth.Rfcomm пространство имен. Для этой возможности требуются дочерние элементы. Дополнительные сведения см. в разделе "Как указать возможности устройства для Bluetooth".

Примеры

Ниже приведен пример узла Capabilities, который будет работать с Windows 10.0.10240.0 и 10.0.10586.0 (хотя Windows 10.0.10240.0 будет анализировать только элементы <Device>). Windows 10.0.10586.0 с другой стороны, поддерживает до 100 <Device> элементов плюс <f2:Device> для общего дополнения 1000 элементов.

<Package
    xmlns:f2="http://schemas.microsoft.com/appx/manifest/foundation/windows10/2">
...
<Dependencies>
    <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0"/>
</Dependencies>
...
<Capabilities>
    <DeviceCapability Name="microphone"/>
    <DeviceCapability Name="webcam"/>
    <DeviceCapability Name="<name>">
        <Device Id="id_000" ... />
        ...
        <Device Id="id_099" ... />
        <f2:Device Id="id_100" ... />
        ...
        <f2:Device Id="id_999" ... />
    </DeviceCapability>
</Capabilities>

Если вы хотите поддерживать только Windows 10.0.10240.0, необходимо только элемент <Device>. Если вы хотите поддерживать только Windows 10.0.10586.0, вам потребуется только элемент <f2:Device>.

Дополнительные примеры см. в разделе "Как указать возможности устройства в манифесте пакета".

См. также

Объявления возможностей приложения

Указание возможностей устройства в манифесте пакета

Требования

Элемент Ценность
Пространство имен http://schemas.microsoft.com/appx/manifest/foundation/windows10