Bluetooth: getAvailability()-Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die getAvailability()-Methode des Bluetooth-Interfaces gibt nominal true zurück, wenn der User-Agent Bluetooth unterstützen kann (weil das Gerät über einen Bluetooth-Adapter verfügt), und andernfalls false.

Das Wort „nominal“ wird verwendet, weil, wenn die Erlaubnis zur Verwendung der Web Bluetooth API durch die Permissions-Policy: bluetooth-Berechtigung verweigert wird, die Methode immer false zurückgeben wird. Zusätzlich kann ein Benutzer seinen Browser so konfigurieren, dass er false aus einem getAvailability()-Aufruf zurückgibt, selbst wenn der Browser über einen funktionierenden Bluetooth-Adapter verfügt, und umgekehrt. Dieser Einstellungswert wird ignoriert, wenn der Zugriff durch die Berechtigung blockiert wird.

Selbst wenn getAvailability() true zurückgibt und das Gerät tatsächlich einen Bluetooth-Adapter hat, bedeutet das nicht unbedingt, dass der Aufruf von navigator.bluetooth.requestDevice() auf ein BluetoothDevice aufgelöst wird. Der Bluetooth-Adapter könnte nicht eingeschaltet sein, und ein Benutzer könnte die Erlaubnis zur Verwendung der API verweigern, wenn er dazu aufgefordert wird.

Syntax

js
getAvailability()

Parameter

Keine.

Rückgabewert

Ein Promise, der mit einem Boolean aufgelöst wird.

Der Promise wird mit einem Wert von false aufgelöst, wenn der Zugriff durch Permissions-Policy: bluetooth verweigert wird, wenn der Benutzer den Browser so konfiguriert hat, dass er immer mit false aufgelöst wird, oder wenn das Gerät keinen Bluetooth-Adapter hat. Andernfalls wird er mit true aufgelöst.

Ausnahmen

Keine.

Beispiele

Das folgende Snippet gibt eine Meldung in der Konsole aus, die angibt, ob Bluetooth von dem Gerät unterstützt wird oder nicht:

js
navigator.bluetooth.getAvailability().then((available) => {
  if (available) {
    console.log("This device supports Bluetooth!");
  } else {
    console.log("Doh! Bluetooth is not supported");
  }
});

Spezifikationen

Specification
Web Bluetooth
# dom-bluetooth-getavailability

Browser-Kompatibilität

BCD tables only load in the browser