在没有监控的情况下获取主要/次要值?

Posted

技术标签:

【中文标题】在没有监控的情况下获取主要/次要值?【英文标题】:Obtaining Major/Minor values 'without' monitoring? 【发布时间】:2015-09-01 21:57:00 【问题描述】:

我知道监控用于在应用程序进入特定区域时通知它。 目标是简单地设置一个后端,将 +1 添加到表示智能设备进入区域的次数的计数值。但我认为我还不了解监控的工作方式。

如果我设置只监视某个 UUID 值,应用程序将在任何 iBeacon 的任何区域以它输入的相同 UUID 得到通知。有没有办法在没有特别要求/设置它们的情况下也获得区域的主要和次要值?这应该是可能的,因为数据有效负载还包含主要和次要值?!或者我是否需要指定任何创建的信标及其各自的 UUID、主要和次要进行监控,以便跟踪和增加计数值?

让我重述一下:是否可以在进入任何区域时获得 UUID、Major 和 Minor 值,而无需设置 CLLocationManager 或进行一般监控(针对主要和次要),因为有效负载包含该信息?阅读此处的类似主题表明,在这种情况下,测距开始发挥作用。这让我更加困惑,因为我认为测距仅使用数据有效载荷内的测量功率来确定近似距离?

【问题讨论】:

【参考方案1】:

是否可以在输入任意值时获得 UUID、Major 和 Minor 值? 区域无需设置 CLLocationManager 或监控 generall(用于主要和次要),因为有效负载包含 信息?

没有。 locationManager:didEnterRegion: 将使用 CLRegion 对象调用,该对象将是一个包含 UUID、主要和次要数字的 CLBeaconRegion,但这些 不会 对应于特定的标识符beacon 导致进入事件,只是到您已经提供的 region。 (更具体地说,例如,如果您开始仅基于 UUID 进行监控,您将获得一个 CLBeaconRegion,其中 majorminor 设置为 nil,而不是由导致事件。)

您的推理没有任何问题 — 设备确实包含您感兴趣的信息 — ios 只是无法在应用程序级别提供这些信息。

通读此处的类似主题表明在这种情况下 测距开始发挥作用。

是的,您可以在进入区域时(或之前)开始测距,此时您将获得该区域中可见的信标的完整标识符列表。 a different question中有a good answer covering this。

【讨论】:

以上是关于在没有监控的情况下获取主要/次要值?的主要内容,如果未能解决你的问题,请参考以下文章

iBeacon 监控具有相同 UUID 和不同主要、次要的多个信标

如何在 didExitRegion 中获取信标主要和次要 id

在sql server中清空了数据记录但是对应的数据库文件的大小没有变小

在没有 spark UI 的情况下在 AWS EMR 中监控 spark 集群

Flask 在没有提交按钮的情况下获取复选框值

cordova-plugin-ibeacon:当监控发现信标时,主要/次要不可用