【问题标题】:How to connect to beacon by android beacon library and change beacon's data fields如何通过 android 信标库连接到信标并更改信标的数据字段
【发布时间】:2015-03-04 16:01:47
【问题描述】:

我使用这个sdk:http://altbeacon.github.io/android-beacon-library/samples.html 我的应用程序已经检测到所有信标(AprilBeacons),我可以从信标获取所有信息。但是我应该更改主要\次要等字段,我不知道如何连接到信标并保存新数据。

我创建了新的信标构建器,例如:

Beacon changedBeac = new Beacon.Builder()
                         .setId1("2f234454-cf6d-4a0f-adf2-f4911ba9ffa6")
                         .setId2("1")
                         .setId3("2")
                         .setManufacturer(0x0118)
                        .setTxPower(-59)
                        .setDataFields(Arrays.asList(new Long[]{0l}))
                        .build();

那么如何向选定的信标发送新的信标信息?

【问题讨论】:

    标签: ibeacon ibeacon-android altbeacon


    【解决方案1】:

    很遗憾,图书馆无法做到这一点。

    问题是没有标准配置硬件信标的标识符,仅用于检测信标和传输信标。每个硬件信标制造商都有不同的方式来配置信标标识符。一些制造商有一个配置标识符的应用程序,一些制造商有一个专有的 SDK。有些制造商根本不允许这样做。

    如果您希望配置四月信标,请咨询制造商以获取说明。

    您上面提到的 API 旨在使 Android 5+ 设备传输作为信标。它们不配置外部硬件信标。

    【讨论】:

    • 那么,我应该将April的SDK(AprilBeacon-Android-SDK)添加到我的项目中并使用它来配置信标吗?
    • 是的,您应该使用 AprilBeacon 应用程序或 SDK 来配置他们的信标。
    【解决方案2】:

    如果您使用 CC2540 或 CC2541 作为信标,您可以向设备发送 AT 命令,例如

    AT+MARJ0x1234 设置 iBeacon 主要编号为 0x1234(十六进制)

    AT+MINO0xFA01 设置 iBeacon Minor 编号为 0xFA01(十六进制)

    AT+ADVI5 设置广播间隔为 5(546.25 毫秒)

    AT+NAMEYOURNAME 将 HM-10 模块名称设置为 YOURNAME。让它独一无二。

    AT+RESET 通过蓝牙从您的手机以字符串格式重新启动,没有任何分隔符或换行符,即 \n 并确保设备处于可连接模式,否则它将无法工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 2019-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多