【问题标题】:Can I make iPhone/iPad broadcast as Eddystone Beacon?我可以将 iPhone/iPad 作为 Eddystone Beacon 进行广播吗?
【发布时间】:2016-02-03 10:52:25
【问题描述】:

我们可以让 iOS 设备充当 iBeacon 发射器,如果我们知道它们的 Proximity UUID,我们就可以定位附近的 iBeacon。

使用 Google 的 Proximity Beacon API,可以配置和注册真正的 Beacon 硬件,我们可以使用 Nearby Messaging API 定位它们。

但是是否可以让 iOS 设备作为 Eddystone Beacons 进行广播?它需要能够被扫描 Eddystone 信标的应用发现。

提前致谢。

【问题讨论】:

    标签: iphone beacon eddystone google-beacon-platform


    【解决方案1】:

    很遗憾,这是不可能的。 虽然 iOS 设备可以使用 CoreBluetooth API 发布蓝牙 LE 服务广告(Eddystone 使用的广告类型),但您无法附加必要的数据。这是因为将服务数据与广告相关联的CBAdvertisementDataServiceDataKey 在 iOS 上是只读的。不能设置数据。

    所以当你想让 iOS 设备做这样的广告来传输 Eddystone-UID 时:

    0201060303aafe1516aafe00e72f234454f4911ba9ffa6000000000001

    你最终会做这样的广告:

    0201060303aafe0316aafe

    这不包括 Eddystone-UID 类型代码 (00)、校准功率 (e7)、命名空间标识符 (2f234454f4911ba9ffa6) 和实例标识符 (000000000001)。因此,它不会被识别为 Eddystone-UID 帧。

    【讨论】:

    • 感谢您的解释。我对此进行了研究,只是为了完全确定。您的详细解释很有帮助。
    • 能否确认情况仍然如此(2021 年——5 年后)?也许超出了这个问题的范围,但苹果为什么不添加这个功能呢? -- 看来 Eddystone 是对 iBeacon 的全面改进...
    • 到 2021 年的 iOS 15.1 仍然如此,是的。我无法解释为什么 Apple 有这个限制。
    猜你喜欢
    • 2016-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多