Freigeben über


Unterstützen von Bluetooth-Geräten (HTML)

[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation]

Windows-Runtime in Windows 8.1 bietet eine Reihe neuer Bluetooth-Namespaces:

Mithilfe dieser Namespaces können Entwickler eine Windows Store-App erstellen, die mit Bluetooth-Geräten kommuniziert.

Sie müssen Informationen zu den Funktionen Ihres Geräts in den Deklarationen im App-Manifest angeben. Dadurch kann dem Gerät eine App zugeordnet werden.

Weitere Informationen finden Sie unter So wird’s gemacht: Angeben von Gerätefunktionen für Bluetooth.

RFComm

Die Bluetooth RFComm APIs folgen den Windows-Runtime-Richtlinien und bieten die folgenden Funktionen:

  • Die API baut auf vorhandenen Mustern für Windows.Devices auf, einschließlich enumeration und instantiation.
  • SDP-Attribute weisen einen Wert und einen erwarteten Typ auf. Einige gängige Geräte verfügen jedoch über fehlerhafte Implementierungen von SDP-Attributen, bei denen der Wert nicht dem erwarteten Typ entspricht. Darüber hinaus sind für viele Verwendungen von RFCOMM zusätzliche SDP-Attribute überhaupt nicht erforderlich. Daher bietet diese API Zugriff auf die nicht analysierten SDP-Daten, aus denen Entwickler die erforderlichen Informationen abrufen können.
  • Beim Lesen und Schreiben von Daten werden die Vorteile von established data stream patterns und Objekten in Windows.Storage.Streams genutzt.

Die RFCOMM-APIs stützen sich auf das Konzept der Dienst-IDs (Service Identifiers, SIDs). Obwohl es sich bei einer SID lediglich um eine 128-Bit-GUID handelt, wird sie im Allgemeinen als 16-Bit-Ganzzahl oder als 32-Bit-Ganzzahl angegeben. Die RFCOMM-API bietet einen Wrapper für SIDs, der deren Angabe und Verwendung als 128-Bit-GUIDs und als 32-Bit-Ganzzahlen zulässt, jedoch keine 16-Bit-Ganzzahlen bietet (damit die Windows-Runtime-Richtlinien erfüllt sind). Dies stellt für die API kein Problem dar, da in den Sprachen automatisch eine Erweiterung auf eine 32-Bit-Ganzzahl erfolgt und die ID immer noch ordnungsgemäß generiert werden kann.

Ab Windows 8.1 können Windows Store-Geräte-Apps mehrere Schritte umfassende Gerätevorgänge als Hintergrundaufgabe ausführen, sodass sie bis zum Abschluss ausgeführt werden können, selbst wenn die App in den Hintergrund verschoben und ausgesetzt wird. Dies ermöglicht zuverlässige Gerätewartungen, z. B. Änderungen an dauerhaften Einstellungen oder Firmware sowie Synchronisierung von Inhalten, ohne dass der Benutzer in der Zwischenzeit eine Statusanzeige beobachten muss. Verwenden Sie den DeviceServicingTrigger für Gerätewartungen und den DeviceUseTrigger für die Synchronisierung von Inhalten. Beachten Sie Folgendes: Diese Hintergrundaufgaben können den Zeitraum begrenzen, in dem die App im Hintergrund ausgeführt werden kann, und sie sollen nicht den zeitlich unbefristeten Betrieb oder eine unendliche Synchronisierung ermöglichen. Weitere Informationen finden Sie unter Gerätesynchronisierung und -update (Windows Store-Apps).

Weitere Informationen finden Sie in den folgenden RFCOMM-Verwendungsszenarien:

GATT

Entwickler können mit Bluetooth GATT APIs auf Bluetooth LE-Dienste, -Deskriptoren und -Merkmale zugreifen.

Bluetooth LE-Geräte machen ihre Funktionen über eine Sammlung folgender Elemente verfügbar:

  • Primäre Dienste
  • Enthaltene Dienste
  • Merkmale
  • Deskriptoren

Primäre Dienste definieren den Funktionsvertrag des LE-Geräts, und sie enthalten eine Sammlung der Merkmale, die den Dienst definieren. Diese Merkmale wiederum enthalten Deskriptoren, von denen die Merkmale beschrieben werden.

Die Bluetooth GATT-APIs machen Objekte und Funktionen verfügbar, statt Zugriff auf den Transport unformatierter Daten zu bieten. Auf der Treiberebene werden primäre Dienste als untergeordnete Geräteknoten des Bluetooth LE-Geräts, das die enumeration-API verwendet, aufgezählt.

Die Bluetooth GATT-APIs ermöglichen Entwicklern zudem das Arbeiten mit Bluetooth LE-Geräten; dabei sind sie in der Lage, folgende Aufgaben auszuführen:

  • Ermitteln von Diensten/Merkmalen/Deskriptoren
  • Lesen und Schreiben von Werten für Merkmale/Deskriptoren
  • Registrieren eines Rückrufs für das ValueChanged-Ereignis des Merkmals

Die Bluetooth GATT-APIs erleichtern die Entwicklung, da häufige Eigenschaften behandelt und sinnvolle Standardwerte bereitgestellt werden, um das Verwalten und Konfigurieren von Geräten zu unterstützen. Sie bieten Entwicklern eine Möglichkeit, aus einer Windows Store-App heraus auf Funktionen eines Bluetooth LE-Geräts zuzugreifen.

Um eine sinnvolle Implementierung erstellen zu können, muss ein Entwickler über Vorkenntnisse bezüglich der GATT-Dienste und -Merkmale verfügen, die von der Anwendung verwendet werden sollen; zudem müssen die spezifischen Merkmalswerte auf solche Weise verarbeitet werden, dass die von der API bereitgestellten Binärdaten vor der Präsentation für den Benutzer in hilfreiche Daten umgewandelt werden. Die Bluetooth GATT-APIs machen nur die Grundtypen verfügbar, die für die Kommunikation mit einem Bluetooth LE-Gerät erforderlich sind. Zum Interpretieren der Daten muss ein Anwendungsprofil definiert werden, entweder durch ein Bluetooth SIG-Standardprofil oder mit einem benutzerdefinierten Profil, das von einem Geräteanbieter implementiert wird. Ein Profil begründet einen bindenden Vertrag zwischen Anwendung und Gerät darüber, was von den ausgetauschten Daten dargestellt wird und wie sie zu interpretieren sind.

Aus Gründen der Benutzerfreundlichkeit pflegt Bluetooth SIG eine Liste der öffentlichen Profile, die zur Verfügung stehen.

Weitere Informationen finden Sie in den folgenden GATT-Verwendungsszenarien: