【问题标题】:iBeacon: Trying to track more zones than we have room foriBeacon:试图跟踪超出我们空间的区域
【发布时间】:2014-07-13 08:29:50
【问题描述】:

我在控制台中有这条消息,但我已经检查了 locationManager.monitoredRegions 和 locationManager.rangedRegions 我的应用程序没有监控很多区域... 如何通过智能手机(而不是当前的locationManager)知道监控区域的总数?

【问题讨论】:

    标签: ibeacon


    【解决方案1】:

    您无法获得您的 iOS 设备正在监控的系统范围的信标区域列表。您仅限于应用程序的沙盒。

    如果您的应用达到 20 个区域限制,您将不得不依靠 CLLocationManager.monitoredRegions 属性智能地删除和添加与当前用户相关的 iBeacon 区域。

    【讨论】:

      【解决方案2】:

      我查看了 API,这可能是您要查找的内容: -[CLLocationManager monitoredRegions]

      -[CLLocationManager monitoredRegions]返回所有监控区域的列表。
      信标是基于蓝牙低功耗的特殊区域,您可以使用该属性获取它们。

      如果您想了解智能手机监控的区域总数,请使用[[CLLocationManager monitoredRegions] count] 获取每个位置管理器的监控区域总数。

      您可以通过比较它们来检查您是否在某个区域进行监控 identifier。您无法监控具有相同标识符的多个区域,如果您开始监控具有已存在标识符的区域,它将替换该区域。

      【讨论】:

      • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
      • 这不是链接答案,链接只是为了证明属性存在。这是一个指向在线 iOS API 文档的链接,我认为它不会在一段时间内失效或没有重定向。至少我写了他必须使用的方法,没有必要访问链接。我稍微改进了我的答案以使用更多字符并澄清什么是区域/信标。
      • monitoredRegions 将为您提供当前应用的区域,而不是系统范围的列表
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-02
      • 1970-01-01
      相关资源
      最近更新 更多