我正在使用专有灯塔。我可以完全访问信标的代码,并且可以根据需要设置制造商ID。如果我将ID设置为Apple(即使其成为iBeacon),则位置管理器能够检测到信标的区域并且能够对信标进行范围调整。如果我将ID设置为另一个制造商(即将其设置为"正常"信标),则中央管理器的didDiscoverPeripheral方法不会被称为。我的理解是iOS对待"正常"信标与任何其他BLE外设相同。有人可以提出一些可能的原因吗?
答案 0 :(得分:0)
为了检测制造商的广告,我相信您必须为nil
数组传递serviceUUIDs
。示例如下:
central.scanForPeripheralsWithServices(nil,
options: [CBCentralManagerScanOptionAllowDuplicatesKey: true]
)