一次连接多个iBeacons

时间:2014-11-18 15:08:29

标签: ios bluetooth ibeacon clbeacon clbeaconregion

如果我有一个充当接收器的设备并且它连接到iBeacon,如果它连接到另一个iBeacon同时仍然处理与第一个的连接会发生什么(例如,Hadn完成了运行didEnterRegion方法) ?框架是否自动处理此问题并创建另一种实例'或者我可能遇到问题?

由于

2 个答案:

答案 0 :(得分:1)

我认为如果他们都传输相同的区域(即他们都具有相同的邻近度UUID),那么CoreLocation不会继续发送didEnterRegion和{{1方法。

一旦你开始测量一个区域(那是一个满口的),就会重复调用didExitRegion方法,这样你就可以获得所连接信标的细节。

答案 1 :(得分:1)

如果CoreLocation快速连续检测到两个不同的区域输入事件,则两个线程当然可以同时执行您的委托didEnterRegion。所以,是的,你可能会遇到问题。

出于这个原因,你应该小心:

  1. 在该方法中设计代码,以便在同时执行的线程中正常运行。

  2. 在该方法中设计代码,以便快速退出。任何长时间运行的处理都应该在新的线程中完成。

  3. 虽然问题提及"连接到另一个iBeacon",但重要的是要了解没有实际的连接 - 信标只传输设备,iOS将被动地寻找它们并发送基于委托的回调方法开始看到它们,或者不再看到它们。