0

当您开始使用外围数据广告 CLBeacon 时,您是否可以将 NSString 或 UIImage 传递到此字典中,然后您可以在发现信标时显示出来?

例如,如果我想创建给朋友写一条消息,然后当朋友进入信标区域时,我可以通过将消息存储在 NSDictionary 中然后提取它来让消息显示在他们的手机上吗?如果是这样,怎么做?如果没有,还有其他方法吗?

谢谢!

4

2 回答 2

1

因此,您问是否可以将额外信息添加到自定义应用程序可以查找的信标设备发送的信标广告中?

答案是不。iBeacon 协议是一个非常短的、固定的数据包。没有向数据包添加额外信息的工具。

您可以设计和实现自己的 BLE 服务,作为 iBeacons 的替代品,并在发送器和接收器上实现它。

您还可以使用混合方法,使用标准 iBeacon 发现来查找信标,当您检测到您感兴趣的信标时,触发与该信标的 2 路 BLE 对话并要求它提供更多信息。据我了解,一些作为 iBeacons 出售的 BLE 设备可以运行定制软件来实现这种功能。(其中许多设备中都装有 ARM 处理器,与为 iOS 设备供电的芯片系列相同。

于 2013-12-06T00:18:47.097 回答
0

不,你不能这样做。基于 iOS 的 iBeacon(与所有其他标准 iBeacon 一样)只会传输三部分标识符和发射器功率校准值。而已。你不能传送任何东西。

即使您确实制作了一个自定义的蓝牙 LE 广告,除了标准 iBeacon 字段之外还发送其他数据,您也无法使用用于查看 iBeacon 的标准 API 查看这些数据。

如果你想将其他数据绑定到 iBeacon,你必须通过另一个渠道,通过某种查找,将数据与上面的标识符相匹配。三种常见的方法来做到这一点:

  1. 在您的应用程序中硬编码静态查找表。
  2. 使用 Web 服务根据 iBeacon 标识符查找值。
  3. 使用辅助 BluetoothLE 通信通道直接从(非标准)iBeacon 获取数据。

我的公司有一个名为ProximityKit的 Web 服务,可以轻松地将数据与应用程序中的 iBeacons 关联起来。您登录到 Web 界面以键入键/值对以与每个 iBeacon 关联,然后包含的 iOS 客户端库会在 iBeacon 可见时自动为您提供这些键/值对。

于 2013-12-06T00:23:02.017 回答