解析信标的 URL

Parsing the URL of a beacon

我正在使用 android.bluetooth.le api 扫描我周围的蓝牙 LE 设备

 @Override
            public void onLeScan(final BluetoothDevice device, final int rssi,
                                 byte[] scanRecord) { ... }

并且我正在使用此回调方法在找到某些结果时通知我。现在的问题是,我无法找到给出信标将传输的 url 的方法。

注意:我正在尝试使用 android.bluetooth.le 来完成它,但是如果您有其他想法或任何第 3 方 api能胜任这份工作,我会很乐意听你的。

提前致谢。

蓝牙 LE 信标有很多种,但今天制造的传输 URL 的主要信标是发送 Eddystone-URL 格式的信标。

您可以使用开源 Android Beacon 库来扫描和解析该格式。请参阅使用 Eddystone-URL 部分 here

该库将为您进行扫描,但如果您想继续直接使用 android.bluetooth.le 包,您可以简单地使用解析信标的 Android 信标库组件。请参阅 BeaconParser class.

的文档

哦,这个库是开源的,所以可以随意复制和更改代码!