我正在开发的应用程序记录了有关用户花费大部分时间的地方的信息。 Core Location 的 Visits 监控完全满足其对位置信息的所有要求。
在测试此应用时,我们的 QA 工程师揭示了 Core Location 因不明原因错过访问的证据。这并不是定位精度低的结果。 Core Location 开始跳过之前注册的位置,没有任何问题。
为了清楚起见,我们进行了测试。我在他的手机上安装了我们的应用程序和示例应用程序:https://github.com/steveschauer/TestCLVisit
经过 3 天的测试,我们比较了来 self 们的应用程序、示例应用程序和设置->隐私->位置服务->系统服务->常用位置的信息。
来自所有来源的信息都是平等的。所以我们可以说这不是我们应用程序的问题。
但是虽然第一天注册的所有位置都是正确的,但第二天和第三天的许多位置都被遗漏了。只有少数人注册了。
这是访问监控的正常行为吗? 这种跳过的原因可能是什么? 有人对访问监控有负面或正面的经验吗?
最佳答案
是的,我在使用 CLVisit API 时遇到了一些类似的问题。还有一篇来自NSHipster的文章,它描述了 CLVists 的一些问题,这些问题在 iOS 10 中仍然存在。它基本上继续说,如果你想要非常精确的基础设施,请不要使用 CLVisit。 根据我们的经验,CLVisit 并不是那么精确。虽然开始和结束时间通常在一两分钟内是准确的,但在什么是访问和什么不是访问的边缘处界限变得模糊。躲进街角的咖啡店一分钟可能不会触发访问,但在特别长的红绿灯处等待可能会触发访问。
关于ios - Core Location 在启用 CLVisit 监控的情况下跳过用户移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39436760/