Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.
The Bluetooth interface of the Web Bluetooth API returns a Promise to a BluetoothDevice object with the specified options.
Interface
interface Bluetooth : EventTarget {
[SecureContext] Promise<boolean> getAvailability();
[SecureContext] attribute EventHandler onavailabilitychanged;
[SecureContext, SameObject] readonly attribute BluetoothDevice? referringDevice;
[SecureContext] Promise<BluetoothDevice> requestDevice(optional RequestDeviceOptions options);
};
Bluetooth implements BluetoothDeviceEventHandlers;
Bluetooth implements CharacteristicEventHandlers;
Bluetooth implements ServiceEventHandlers;
Properties
Inherits properties from its parent EventTarget.
Bluetooth.referringDeviceRead only- Returns a reference to the device, if any, from which the user opened the current page. For example, an Eddystone beacon might advertise a URL, which the user agent allows the user to open. A BluetoothDevice representing the beacon would be available through
navigator.bluetooth.referringDevice.
Events
Bluetooth.onavailabilitychanged- An event handler that runs when an event of type
availabilitychangedhas fired.
Methods
Bluetooth.getAvailability()- Returns a
Promisethat resolved to aBooleanindicating whether the user-agent has the ability to support Bluetooth. Some user-agents let the user configure an option that affects what is returned by this value. If this option is set, that is the value returned by this method. Bluetooth.requestDevice()- Returns a
Promiseto aBluetoothDeviceobject with the specified options.
Specifications
| Specification | Status | Comment |
|---|---|---|
| Web Bluetooth The definition of 'Bluetooth' in that specification. |
Draft | Initial definition. |
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | 56 | ? | ? | 43 | ? |
| Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | No support | 56 | ? | ? | ? | 43 | ? |