8

如何将数据发送到充当 iBeacon 的 iPhone?我正在寻找如下过程:

  1. 搜索附近的 iBeacons
  2. 连接到一些 iBeacon
  3. 在设备之间交换数据

有人知道如何将不同的蓝牙功能组合在一起以实现这一点吗?

提前谢谢

4

3 回答 3

9

标准iBeacon 是移动设备可以看到的仅传输设备,但实际上并不“连接”到它们或交换数据。

但是,如果您在所有设备上都有应用程序以及进行数据传输的网络服务,您仍然可以按照您的要求进行操作。这将允许设备 A 和 B 在附近时相互检测并交换数据。就是这样:

  1. 您在设备 A 和 B 上的应用程序在充当 iBeacon(使用特定于应用程序的标识符和特定于电话的标识符来宣传其存在)和范围为 iBeacon 信号(包括应用程序特定的标识符)之间交替。
  2. 在测距周期中,您的设备 A 上的应用会检测到来自设备 B 的 iBeacon 传输,其中包括您的应用标识符和 B 的设备标识符。
  3. 然后,应用 A 使用“A”的源和“B”的目标对 Web 服务进行“写入”调用,以及您要传输的任何数据,例如“设备 A 向设备 B 打招呼”。
  4. 该应用程序还会定期对 Web 服务进行“读取”调用。在此示例中,设备 B 将读取发往 B 的任何信息,并且 Web 服务将返回一条记录,表明设备 A 已向其发送了一条消息,其中包含“设备 A 向设备 B 打招呼”的数据。

因为同样的进程也在两部手机上运行,​​所以这种通信可以双向进行。

于 2013-11-02T04:58:22.387 回答
1

它是否特别需要使用 iBeacon 技术?我问的原因是,通过阅读您对过程的描述,您可以使用 iOS 7 的 Multipeer Connectivity 来实现相同的目标。它能够抽象出将 2 个 iOS 设备连接在一起的所有技术复杂性,无论接口如何,无论是 WiFi 还是蓝牙。我已经设法使用 、 和 类构建了类似MCNearbyServiceBrowserMCNearbyServiceAdvertiser东西MCSession

于 2013-11-09T13:37:02.727 回答
1

iBeacon 是一种接近技术,并非为数据交换而设计。但是,由于蓝牙堆栈将在您的 iPhone 上作为信标处于活动状态(因此它可以宣传其邻近 UUID),您可以使用Core Bluetooth连接到信标并在设备之间交换数据。

于 2013-11-01T13:37:17.410 回答