【问题标题】:Read sensor values from iBeacon on Android with AltBeacon library使用 AltBeacon 库从 Android 上的 iBeacon 读取传感器值
【发布时间】:2023-03-30 05:00:01
【问题描述】:

我有一个 Beacon skybeacon Forecum 201,它可以宣传为 iBeacon 或 Eddystone (URL/UID)。它有温度和湿度传感器。

在我的项目中,我使用 AltBeacon 库进行监控和测距等,以使用信标。如示例或文档中所述,我可以使用 getExtraDataFields() 方法从 iBeacon 获取额外数据。

当我将信标配置为作为 iBeacon 传输时,getExtraDataFields() 返回 0,因此没有传感器值。但是当我将它配置为使用 TLM 作为 Eddystone UID 传输时,我可以读取额外的字段,并返回温度等(我用我拥有的其他信标、MINEW E7 信标对其进行了测试,并且工作方式相同,仅作为 Eddyston UID / TLM 传感器值是可读的)

我什至在 RadiusNetwork Locate 应用程序中进行了检查,它的工作方式与我的应用程序相同(仅在广告为 EddyStone 时读取传感器值)。

那么有什么方法可以在 Android 上使用 AltBeacon 读取 iBeacon 广告类型的传感器值?或者它只能被 Eddystone UID/TLM 读取?那么,如果使用 iOS 开发并接收 iBeacons 会怎样?

【问题讨论】:

    标签: ibeacon sensors altbeacon ibeacon-android android-ibeacon


    【解决方案1】:

    信标数据字段的传感器映射取决于信标硬件制造商的实施。在 Forecum 201 的情况下,似乎仅对 Eddystone-TLM 进行了映射。其他信标制造商(如 Radius 网络)确实将信标传感器字段映射到 AltBeacon。 AltBeacon 只有一个单字节的额外数据字段,Radius 使用它来暴露电池传感器。 (其他制造商,如 Kontalt.io 也这样做。)对于 iBeacon,布局中根本没有额外的数据字段,因此制造商在 iBeacon 广告中暴露传感器是非常罕见的。

    底线:您将不得不使用 Eddystone-TLM 从带有此信标的广告中读取值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多