2016-06-10 41 views
0

我试图计算使用案例来部署信标来检测持续时间客户停留在商场中的特定部分。iBeacon实现 - 使用案例

据我所知,我可以使用一个唯一的UUID声明作为应用程序监视的区域,但didEnterRegion没有提供主要的&次要信息来识别哪个信标被检测到。在didEnterRegion触发器之后,该应用程序将能够有很短时间执行测距以检索主要的&未成年人大约10秒钟。

如果我的信标与覆盖检测空间有重叠,该怎么办? 假设该空间有4个信标,并且当客户从1个信标移动到另一个信标时,由于UUID /区域仍然相同,因此不会有任何退出/输入区域触发。 我想记录客户在不同信标的停留时间,情景会更好地实现或解决方案是什么?

感谢

回答

0

一些提示:

  • 使用单一ProximityUUID。在商场的每个区域使用不同的主要价值。使每个灯标的次要值不同。

  • 为每个区域(主要)设置一个CLBeaconRegion并为每个区域启动监视和测距。 (最多20个)。

  • Extend background ranging为每个区域进入/退出3分钟。

  • 当测距时,使用估计的距离来决定哪个信标最接近。无论哪个区域(主要价值)都是Mall区域。如果它与当前区域不同,请标记退出该区域的时间戳和用于输入新区域的时间戳。

  • 如果您获取手机当前所在区域的监控区域退出事件,请标记用于退出该区域的时间戳。

+0

据我了解,如果信标覆盖了覆盖范围,并且它们共享相同的UUID。当设备第一次进入区域时,EnterRegion只会触发一次,但在进入第二或第三个信标范围时不会触发。只有当设备完全离开具有相同UUID的所有信标时,ExitRegion才会触发。因此,如果设备长时间停留在该区域内,3分钟延伸范围不足以监测设备移动。 – fayt

+0

对于进入/退出来说,它不仅仅是UUID,而是整个区域的定义,包括专业。只要用户开始或停止看到符合任何区域定义的信标,就会得到一个新的监控回调,并且3分钟时钟再次开始。 – davidgyoung

+0

任何原因不使用不同的UUID而不是主要的来设置CLBeaconRegion? – fayt