Bluetooth

Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

Объект Bluetooth интерфейса Web Bluetooth API возвращает объект Promise объекту BluetoothDevice с указанными параметрами.

Интерфейс

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;

Свойства

Наследует свойства от родителя EventTarget.

Bluetooth.referringDevice Только для чтения
Возвращает ссылку на устройство, если таковое имеется, из которого пользователь открыл страницу. Например, Eddystone beacon может найти URL - адрес, который позволяет открыть строка агента адреса. Устройство Bluetooth предоставляет маяк, который будет доступен через navigator.bluetooth.referringDevice.

События

Bluetooth.onavailabilitychanged
Обработчик событий, который запускается при возникновении события типа availabilitychanged.

Методы

Bluetooth.getAvailability()
Возвращает Promise, который возвращает Boolean, указывая, поддерживает ли браузер Bluetooth. Некоторфе браузеры дают возможность управлять возвращаемым значением этого метода.
Bluetooth.requestDevice()
Возвращает Promise объекту BluetoothDevice с переданными параметрами.

Спецификации

Спецификация Статус Комментарии
Web Bluetooth
Определение 'Bluetooth' в этой спецификации.
Черновик Первоначальное определение.

Совместимость с браузерами

Update compatibility data on GitHub
КомпьютерыМобильные
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidFirefox для AndroidOpera для AndroidSafari on iOSSamsung Internet
Bluetooth
Экспериментальная
Chrome Полная поддержка 56
Замечания
Полная поддержка 56
Замечания
Замечания macOS only.
Полная поддержка 56
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.
Полная поддержка 70
Замечания
Замечания Windows 10.
Edge ? Firefox Нет поддержки НетIE Нет поддержки НетOpera Полная поддержка 43
Замечания
Полная поддержка 43
Замечания
Замечания macOS only.
Полная поддержка 43
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 43: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
Полная поддержка 57
Замечания
Замечания Windows 10.
Safari ? WebView Android Нет поддержки НетChrome Android Полная поддержка 56Firefox Android Нет поддержки НетOpera Android Полная поддержка 43Safari iOS ? Samsung Internet Android ?
getAvailability
Экспериментальная
Chrome Полная поддержка 56
Замечания
Полная поддержка 56
Замечания
Замечания macOS only.
Полная поддержка 56
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.
Полная поддержка 70
Замечания
Замечания Windows 10.
Edge ? Firefox Нет поддержки НетIE Нет поддержки НетOpera Полная поддержка 43
Замечания
Полная поддержка 43
Замечания
Замечания macOS only.
Полная поддержка 43
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 43: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
Полная поддержка 57
Замечания
Замечания Windows 10.
Safari ? WebView Android Нет поддержки НетChrome Android Полная поддержка 56Firefox Android Нет поддержки НетOpera Android Полная поддержка 43Safari iOS ? Samsung Internet Android ?
onavailabilitychanged
Экспериментальная
Chrome Полная поддержка 56
Замечания
Полная поддержка 56
Замечания
Замечания macOS only.
Полная поддержка 56
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.
Полная поддержка 70
Замечания
Замечания Windows 10.
Edge ? Firefox Нет поддержки НетIE Нет поддержки НетOpera Полная поддержка 43
Замечания
Полная поддержка 43
Замечания
Замечания macOS only.
Полная поддержка 43
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 43: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
Полная поддержка 57
Замечания
Замечания Windows 10.
Safari ? WebView Android Нет поддержки НетChrome Android Полная поддержка 56Firefox Android Нет поддержки НетOpera Android Полная поддержка 43Safari iOS ? Samsung Internet Android ?
referringDevice
Экспериментальная
Chrome Полная поддержка 56
Замечания
Полная поддержка 56
Замечания
Замечания macOS only.
Полная поддержка 56
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.
Полная поддержка 70
Замечания
Замечания Windows 10.
Edge ? Firefox Нет поддержки НетIE Нет поддержки НетOpera Полная поддержка 43
Замечания
Полная поддержка 43
Замечания
Замечания macOS only.
Полная поддержка 43
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 43: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
Полная поддержка 57
Замечания
Замечания Windows 10.
Safari ? WebView Android Нет поддержки НетChrome Android Полная поддержка 56Firefox Android Нет поддержки НетOpera Android Полная поддержка 43Safari iOS ? Samsung Internet Android ?
requestDevice
Экспериментальная
Chrome Полная поддержка 56
Замечания
Полная поддержка 56
Замечания
Замечания macOS only.
Полная поддержка 56
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 56: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.
Полная поддержка 70
Замечания
Замечания Windows 10.
Edge ? Firefox Нет поддержки НетIE Нет поддержки НетOpera Полная поддержка 43
Замечания
Полная поддержка 43
Замечания
Замечания macOS only.
Полная поддержка 43
Замечания Отключено
Замечания Linux and versions of Windows earlier than 10.
Отключено From version 43: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
Полная поддержка 57
Замечания
Замечания Windows 10.
Safari ? WebView Android Нет поддержки НетChrome Android Полная поддержка 56Firefox Android Нет поддержки НетOpera Android Полная поддержка 43Safari iOS ? Samsung Internet Android ?

Легенда

Полная поддержка  
Полная поддержка
Нет поддержки  
Нет поддержки
Совместимость неизвестна  
Совместимость неизвестна
Экспериментальная. Ожидаемое поведение может измениться в будущем.
Экспериментальная. Ожидаемое поведение может измениться в будущем.
Смотрите замечания реализации.
Смотрите замечания реализации.
Пользователь должен сам включить эту возможность.
Пользователь должен сам включить эту возможность.