ios - 连接到 iBeacon

标签 ios swift ibeacon core-bluetooth

我可以使用以下方式扫描 iBeacons:

func locationManager(manager: CLLocationManager!, didRangeBeacons beacons: [AnyObject]!, inRegion region: CLBeaconRegion!) {

  }
}

假设我扫描后得到以下信标

Beacon 1: major:1 minor:5 uuid:xxx
Beacon 2: major:1 minor:6 uuid:xxx
Beacon 3: major:1 minor:7 uuid:xxx

扫描后我想连接到信标 2 并更改其特性。

我知道我可以使用CoreBluetooth扫描并连接到蓝牙设备并更改其特性,但问题是如何通过Core Bluetooth识别哪个设备是beacon 2?

最佳答案

您无法获取将 CLBeaconCBPeripheral 直接关联的任何信息。

通常,信标的 GATT 服务会公开“设备名称”特征,您可以向用户显示该特征,以允许他们从列表中选择要配置的设备。

正如 David 在评论中指出的那样,任何此类 GATT 服务都将是特定于供应商的,或者甚至可能不存在,而信标是通过其他方法(例如 USB)配置的。即使提供了 GATT 服务,它也可能通过配置被禁用,或者仅在初始通电后的有限时间内处于事件状态。

没有定义通用的“配置 iBeacon”服务。

关于ios - 连接到 iBeacon,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43312576/

相关文章:

ios - 推特登录异常 flutter

ios - 当我在 Parse 中创建任何对象时,createdAt 属性不是正确的创建时间。

ios - 无法测试文档提供程序扩展

ios - 即使应用程序位于同一位置,信标的邻近范围也会来回变化

ios - 应用程序在后台时的信标行为

java - Kontakt.io 信标示例的问题

ios - 错误 : symbol 'xxx' is multiply defined

ios - NSFetchedResultsController swift 中的两个数组

ios - 在基于标签栏的应用程序上使用 UINavigationController 将数组添加到 UITableView

swift - 获取 Playground 以显示所有循环结果