Supporto di dispositivi HID (HTML)
[ Questo articolo è rivolto agli sviluppatori per Windows 8.x e Windows Phone 8.x che realizzano app di Windows Runtime. Gli sviluppatori che usano Windows 10 possono vedere Documentazione aggiornata ]
L'API Windows.Devices.HumanInterfaceDevice consente all'app di Windows Runtime di accedere ai dispositivi che supportano il protocollo HID (Human Interface Device).
Nelle fasi iniziali dello sviluppo, questo protocollo era destinato a dispositivi come tastiere, mouse e joystick, oltre a essere progettato inizialmente per l'esecuzione su trasporto USB. Il protocollo supporta oggi un set di dispositivi notevolmente più ampio. In Windows 8.1, Microsoft aggiunge inoltre il supporto per i trasporti USB, Bluetooth, Bluetooth a basso consumo e I2C.
La nuova API è progettata per due gruppi di destinatari distinti:
- Partner hardware che creano un dispositivo HID e hanno bisogno di un'app di Windows Runtime per il loro dispositivo. I fornitori di hardware indipendenti (IHV) possono dichiarare un'app per l'acquisizione automatica quando un utente collega la loro periferica.
- Sviluppatori di app che vogliono creare app per queste periferiche
Il partner hardware ha già familiarità con il protocollo HID, ma deve imparare a conoscere i requisiti delle app di Windows Runtime. Lo sviluppatore di app dovrà probabilmente approfondire la conoscenza del protocollo. Se non hai familiarità con il protocollo HID e con concetti come report delle funzionalità, report di input e report di output, puoi trovare altre informazioni qui.
Prima di usare questa API verifica la sezione Limitazioni di seguito, per scoprire se esistono limitazioni che potrebbero impedirti di raggiungere alcuni obiettivi.
Limitazioni dell'API HID
L'API Windows.Devices.HumanInterfaceDevice supporta la maggior parte dei dispositivi HID. Tuttavia, blocca la raccolta di applicazioni di primo di livello rappresentata dalle pagine di utilizzo seguenti, per evitare conflitti con altre API e altri comportamenti del sistema operativo Windows:
- HID_USAGE_PAGE_UNDEFINED
- HID_USAGE_PAGE_GENERIC
- HID_USAGE_GENERIC_KEYBOARD
- HID_USAGE_GENERIC_KEYPAD
- HID_USAGE_GENERIC_SYSTEM_CTL
- HID_USAGE_PAGE_KEYBOARD
- HID_USAGE_PAGE_CONSUMER
- HID_USAGE_PAGE_DIGITIZER
- HID_USAGE_PAGE_SENSOR
- HID_USAGE_PAGE_BARCODE_SCANNER
- HID_USAGE_PAGE_WEIGHING_DEVICE
- HID_USAGE_PAGE_MAGNETIC_STRIPE_READER
- HID_USAGE_PAGE_TELEPHONY
Oltre a bloccare il supporto per l'elenco precedente di pagine di utilizzo, l'API richiede inoltre che l'applicazione sia eseguita sui driver inclusi forniti con Windows 8.1. L'API non supporta driver di dispositivo resi disponibili dai fornitori.
Progettata per le periferiche
L'API HID è progettata principalmente per l'accesso a dispositivi periferici. Lo scenario per sviluppatori di app descritto in precedenza funzionerà solo per questi dispositivi.
Gli OEM possono usare l'API per accedere ai dispositivi HID interni ai PC. Questo accesso è tuttavia limitato a un'app privilegiata dichiarata in modo esplicito dal produttore del dispositivo.
Non progettata per scenari di applicazioni del Pannello di controllo
L'API Windows Runtime HID è progettata principalmente per l'accesso da app di Windows Runtime per utente. Queste app possono comunicare con un dispositivo HID tramite questa API, tuttavia non esiste alcun modo con il quale un'app di questo tipo possa salvare le impostazioni fuori dall'ambito dell'app riconosciuto da Windows, operazione necessaria per molte applicazioni del Pannello di controllo.
Requisiti per le app di Windows Phone Store
Le app di Windows Phone Store possono accedere all'API Windows.Devices.HumanInterfaceDevice se il produttore supporta il protocollo HID per dispositivi specifici e fornisce i dati del dispositivo corrispondenti agli sviluppatori di app. Fai riferimento alla documentazione del produttore per un elenco dei dispositivi HID supportati, nonché per informazioni sui dati necessari per implementare l'individuazione dei dispositivi.