微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 BLE Beacon (ANDROID) 获取一条消息

如何解决从 BLE Beacon (ANDROID) 获取一条消息

我有一个 BLE 信标,它不是持续广播,而是在您按下按钮时广播一条消息。这是一个调试消息。我到处找,但找不到可以收听 Beacon 消息的库。

我查看并尝试了以下解决方案:

https://altbeacon.github.io/android-beacon-library/index.html

https://developers.google.com/nearby/messages/android/get-started

是否有允许这样做的库?

解决方法

为了检测按下按钮时发送的信标消息,您需要移动应用程序持续监听(“扫描”是 BLE 术语),因为它不知道您何时按下按钮.

您可以使用问题中提到的开源 Android Beacon Library 来执行此操作。您可能希望使用其“信标测距”API,该 API 会扫描信标并通过每秒回调告诉您的应用它看到的信标(如果有)。如果有人点击了信标按钮,您的应用将收到对 didRangeBeaconsInRegion 的回调,其中包含列表中的单个信标。 (如果没有人点击按钮,应用将收到列表中包含零个信标的回调。)

几个要点:

  1. 您需要知道您的硬件正在传输的信标的格式(iBeacon、AltBeacon、Eddystone-UID、Eddystone-URL 等),以便您可以设置扫描库来查找那种类型的信标.

  2. 你需要知道硬件信标发出什么样的标识符。 iBeacon 和 Altbeacon 等格式传输长的十六进制 UUID 标识符,如“2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6”。您需要知道它发送的内容,以便您可以判断信标是否属于您。否则,即使其他人的信标正在传输,您的程序也会做出反应。

完全披露:我是 Android Beacon 库开源项目的首席开发人员

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。