Можно ли искать данные маяка (uuid, url,...) с помощью прогрессивного веб-приложения, используя только веб-технологии, без использования собственных мобильных технологий (Android, ios,...)?
Заранее спасибо.
Можно ли искать данные маяка (uuid, url,...) с помощью прогрессивного веб-приложения, используя только веб-технологии, без использования собственных мобильных технологий (Android, ios,...)?
Заранее спасибо.
К сожалению, по состоянию на июль 2020 года это невозможно. Пока Google работает над проект WebBluetooth, чтобы обеспечить поддержку многих операций Bluetooth в браузере, по крайней мере, в реализациях Google Chrome на Android 6+, Mac или ChromeOS.
На момент написания этой статьи поиск маяков еще невозможен. API требует, чтобы ОС сканировала устройства, соответствующие запрошенным критериям, а затем позволяла пользователю выбирать устройство для подключения с помощью пользовательского интерфейса. По сути, это исключает обнаружение маяка.
API-интерфейсы сканирования Bluetooth все еще находятся в черновой форме здесь.
EDIT: API, упомянутые @zurfyx в ответе ниже, позволяют вам сканировать и подключаться к рекламируемой службе GATT, но не позволяют читать данные в рекламе. Это важное различие, поскольку чтение данных в рекламе является ключевой возможностью, необходимой для фактического обнаружения маяка Bluetooth. Эта возможность отсутствует в этом API. Без этой возможности обнаружить маяк невозможно, можно только подключиться к устройству BLE, которое может быть маяком Eddystone или другим рекламным сервисом.
ОБНОВЛЕНИЕ, июль 2020 г.: Safari вообще не будет получать какие-либо API WebBluetooth из соображений конфиденциальности, согласно объявление Apple от июня 2020 г. Это делает невозможным сканирование Bluetooth в приложениях для iOS в обозримом будущем.
По состоянию на июль 2020 года Chrome не поддерживает сканирование произвольной рекламы. См. статус здесь: https://github.com/WebBluetoothCG/web-bluetooth/blob/master/implementation-status.md
Отказ от ответственности: я написал eddystone-web-bluetooth (a библиотека, которая упрощает чтение и запись на устройство Eddystone). github@eddystone-web-bluetooth npm@eddystone-web-bluetooth
Возможно сканировать устройства Bluetooth с помощью Web Bluetooth API (в настоящее время поддерживается только Хром).
Используя службу Bluetooth GATT, вы можете подключаться к устройствам Eddystone. и отправлять/получать данные, сообщая в соответствии с своими общедоступными спецификациями (которые в основном список кодов запросов и формат, в котором следует отправлять и ожидать их ответы).
Эти услуги включают в себя такую информацию, как:
Используя стандартную информацию Bluetooth, вы можете узнать наиболее общую информацию об устройстве, такую как его идентификатор и имя:
navigator.bluetooth. устройство запроса
@beaufortfrancois написал, возможно, первый код конфигурации Eddystone Web Bluetooth (исходный код / demo), так что, вероятно, стоит прочитать, если вы хотите углубиться в это. Я многому научился благодаря этому.
ServiceWorkerGlobalScope
, показанные здесь (developer.mozilla .org/en-US/docs/Web/API/) не похоже, что вы можете прослушивать события Bluetooth через слушателей сервис-воркеров.
- person zurfyx; 14.12.2017