当我监控一个区域时,我经常会收到“无法监控区域错误”。我得到这个错误似乎没有任何一致性。我可以重复添加和删除完全相同的区域详细信息,它会看似随机地给我这个错误,一次尝试成功监控该区域,然后下一次失败并出现此错误。
核心位置文档将此错误列为:
kCLErrorRegionMonitoringFailure 无法监控注册区域。如果应用程序超过了它可以同时监控的最大区域数,则监控可能会失败。如果区域的半径距离太大,监控也会失败。
在 iOS 4.0 及更高版本中可用。
我不相信这两个原因中的任何一个都是本案的原因。
当以前没有注册任何区域时,我可以在全新的应用程序安装时收到此错误(因此不应超过我理解的最大值,即 10 或 20,具体取决于我正在阅读的位置)。
对于测试,半径已设置为 100m(显然是最小值),并且由于在反复尝试后,区域通常会使用与先前失败完全相同的位置和半径进行正常注册,因此位置详细信息似乎没有任何问题我正在提供。
是否有其他人遇到任何其他原因或标准会导致这种失败发生?
我已经在 iPhone 4s、5c 和 6 上使用一系列位置在 iOS 7 和 8 上进行了测试,并且经常出现错误,但并非始终如一或具有任何可识别的模式。当一个区域确实注册时,边界跨越事件会按预期触发。