如何扫描我所在地区的可用信标iOS

时间:2015-12-24 09:24:04

标签: ios xcode ibeacon

我是信标编码新手。 我们的客户想要一个应用程序,它将扫描所有可用的信标设备(由客户自己制造)

我想写一个通用代码,它将扫描附近的所有可用设备,并会显示特定命令的警报, 当有电话时它会吹绿灯,收到消息时会发黄灯等。 我提供了所提供的命令,但需要一种方法来让信标在iOS中调用这些命令。

第一个目标是扫描所有可用设备。

在示例中,我发现了一些提供直接UUID的教程 但我需要生成一个扫描所有内容的代码。

欢迎任何链接和其他信息。

提前致谢..

1 个答案:

答案 0 :(得分:1)

Apple限制了在iOS上扫描iBeacons的能力,因此您必须事先了解信标的ProximityUUID。 无论使用公共API,无论使用ProximityUUID,都无法简单地扫描所有iBeacons。虽然存在可能允许此操作的私有API黑客,但这些不允许应用批准在AppStore中分发。

如果您可以为您的客户端获取已知ProximityUUID的有限列表,这仍然可以正常工作。您可以多次调用CoreLocation的startRangingBeaconsInRegion:命令,每个ProxinityUUID一次。虽然你可以调用它的次数没有硬性限制(不像监控API有20个区域的限制),但实际上你可能只能在数百次这样的情况下调用它。

底线:虽然无论ProxinityUUID如何都无法扫描所有信标,但如果您事先了解所有UUID,则可以获得接近相同的效果。