Como especificar recursos de dispositivo para Bluetooth
Observação para Windows 10, consulte O que há de diferente no Windows 10.
O manifesto do pacote é um documento XML que contém as informações que o sistema precisa para implantar, exibir ou atualizar um aplicativo de aplicativos do Windows Runtime. Essas informações incluem identidade do pacote, dependências de pacote, recursos necessários, elementos visuais e pontos de extensibilidade. Cada pacote de aplicativo deve incluir um manifesto de pacote.
Para obter informações detalhadas sobre o manifesto do pacote, consulte Como criar um manifesto de pacote manualmente.
Um aplicativo do Windows Runtime que acessa um dispositivo Bluetooth (por meio das APIs rfcomm ou Gatt) deve incluir dados específicos DeviceCapability no Capabilities nó de seu manifesto. Esses dados identificam o dispositivo e sua finalidade (ou função). Observe que alguns dispositivos podem ter várias funções.
O elemento da ID do Dispositivo
O elemento tipo de função
Uso de DeviceCapability do Bluetooth
Seu aplicativo Bluetooth deve incluir determinadas funcionalidades de dispositivo em seu manifesto do pacote aplicativo para especificar informações importantes sobre o dispositivo. Aqui estão os elementos necessários na ordem hierárquica:
<>DeviceCapability: o atributo Name deve ser "bluetooth.rfcomm" para acessar um dispositivo Bluetooth RFCOMM ou "bluetooth.genericAttributeProfile" para acessar um dispositivo Bluetooth GATT.
<dispositivo>: o atributo ID deve especificar a ID do fornecedor/produto ou o fabricante/modelo ou pode ser "qualquer" para permitir o acesso a qualquer dispositivo que corresponda ao tipo de função.
<Function>: o atributo Type pode especificar o nome do serviço ou a ID do serviço.
Observação Não é possível modificar a funcionalidade do dispositivo Bluetooth no Microsoft Visual Studio. Clique com o botão direito do mouse no arquivo Package.appxmanifest no do Gerenciador de Soluções
Definindo DeviceCapabilities rfcomm
Use o layout a seguir para descrever os recursos do RFCOMM Bluetooth do aplicativo:
<m2:DeviceCapability Name="bluetooth.rfcomm">
<m2:Device Id="vidpid:xxxx xxxx bluetooth">
<m2:Function Type="serviceId:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"/>
<m2:Function Type="name:xxxxx"/>
</m2:Device>
<m2:/DeviceCapability>
Definindo GenericAttributeProfile DeviceCapabilities
Use o layout a seguir para descrever os recursos do GATT Bluetooth do aplicativo:
<m2:DeviceCapability Name="bluetooth.genericAttributeProfile">
<m2:Device Id="model:xxxx;xxxx">
<m2:Function Type="serviceId:xxxxxxxx"/>
<m2:Function Type="name:xxxxx"/>
<m2:/Device>
<m2:/DeviceCapability>
Como especificar exemplos de DeviceCapabilities
As entradas a seguir ilustram métodos diferentes para definir deviceCapabilities para um dispositivo Bluetooth.
O snippet a seguir identifica o
<m2:DeviceCapability Name="bluetooth.rfcomm">
<m2:Device Id="vidpid:0006 0001 bluetooth">
<m2:Function Type="name:obexObjectPush"/>
</m2:Device>
</m2:DeviceCapability>
Como alternativa, o snippet a seguir identifica o DeviceCapabilities para um dispositivo Bluetooth RFCOMM usando sua ID completa.
<m2:DeviceCapability Name="bluetooth.rfcomm">
<m2:Device Id="any">
<m2:Function Type="name:AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE" />
</m2:Device>
</m2:DeviceCapability>
O snippet a seguir identifica o
<m2:DeviceCapability Name="bluetooth.genericAttributeProfile">
<m2:Device Id="any">
<m2:Function Type="name:heartRate" />
</m2:Device>
</m2:DeviceCapability>
Suporte para serviços Bluetooth RFCOMM
Os seguintes serviços RFCOMM têm suporte por meio do nome valor:
- name:serialPort
- name:obexObjectPush
- name:obexFileTransfer
- name:phoneBookAccessPce
- name:phoneBookAccessPse
- name:genericFileTransfer
Não há suporte para os seguintes serviços RFCOMM:
- Descoberta de Serviço (0x1000)
- Procurar Descritor de Grupo (0x1001)
- Acesso lan usando PPP (0x1102)
- Headset (0x1108, 0x1112)
- Telefonia sem fio (0x1109)
- Fonte de áudio (0x110A) e coletor (0x110B)
- Interfone (0x1110)
- Fax (0x1111)
- WAP (0x1113, 0x1114)
- NAP (0x1116)
- GN (0x1117)
- Impressão de HCR (0x1126) e Verificação (0x1127)
- Acesso COMUM ao ISDN (0x1128)
- Acesso ao SIM (0x112D)
- Headset – HS (0x1131)
- Servidor GNSS (0x1136)
- Informações PnP (0x1200)
- Rede Genérica (0x1201)
- Áudio Genérico (0x1203)
- Telefonia genérica (0x1204)
- UPnP (0x1205, 0x1206)
- IP UPnP do ESDP (0x1300, 0x1301, 0x1302)
- Fonte de vídeo (0x1303) e coletor (0x1304)
- Origem DO HDP (0x1401) e Coletor (0x1402)
Suporte para serviços BLUETOOTH GATT
Os seguintes serviços GATT têm suporte por meio do nome valor:
- name:battery
- name:bloodPressure
- name:cyclingSpeedAndCadence
- name:genericAccess
- name:genericAttribute
- name:glucose
- name:healthThermometer
- name:heartRate
- name:runningSpeedAndCadence
Não há suporte para o seguinte serviço GATT:
- Dispositivo de interface humana (0x1812)