从react PWA读取BLE信标

时间:2018-11-22 21:14:31

标签: reactjs bluetooth-lowenergy positioning progressive-web-apps beacon

我正在为客户支持设计PWA。 其中一项功能将要求精确定位(误差5米)用户的手机。 我正在考虑将信标用作其范围和精度套件以满足我的需求。

问题是:如何从react.js(非本机)PWA中读取信标?当然,对于三角剖分,这将需要读取多个信标。

1 个答案:

答案 0 :(得分:1)

很抱歉,由于缺乏浏览器对绑定到原始蓝牙扫描的支持,因此没有一种实用的方法可以使Web应用程序扫描蓝牙信标。

Google Chrome确实支持通过Web Bluetooth API通过JavaScript进行BLE交互。但是,它仅支持发现并连接至GATT服务,不支持查找信标所需的任意BLE扫描。这意味着您找不到兼容iBeacon,Eddystone或AltBeacon的设备。

您也许能够发现可连接的自定义BLE设备,该设备通过可连接的GATT服务模拟信标行为。但是,即使您这样做了,它也只能在Chrome上运行,而不能在Safari,Microsoft或Firefox浏览器上运行,因为这些平台不支持Web蓝牙。

即使您使用自定义信标在Chrome上运行此功能,蓝牙信标也只能提供非常粗略的距离估算。三角剖分只能在3米或更小的非常近的范围内正常运行。带有信标的更实用的室内定位技术使用RSSI指纹识别而不是三角测量。同样,即使是带有Web蓝牙的Google Chrome也不支持执行此操作所需的任意扫描。