关于ios:多个CLLocationManagers有20多个监控区域

Multiple CLLocationManagers have more than 20 monitored regions

我正在为我的应用使用 2 个位置管理器来监控不同类型的区域(CLBeaconRegion


受监控区域是共享资源,这意味着您创建的每个 CLLocationManager 实例实际上都在同一个受监控区域列表上运行。

您可以通过创建 CLLocationManager"A" 来检查是否使用它开始监视区域。然后创建一个 CLLocationManager"B",并打印它的 monitoredRegions 属性。您将看到您开始监视的区域,即使它是在 iOS 中注册的另一个 CLLocationManager。

这个共享列表受到 20 个区域的限制,这意味着无法通过创建更多 CLLocationManager 来绕过限制。

[不过,您的 monitoredRegions 如何以及为什么有超过 20 个条目是一件有趣的事情。我无法复制它。]