我们有一个用于车辆周围的应用程序。它不应该在车辆运动时使用(法律和健康与安全要求)。我们可以将设备锁定为仅通过引导式访问使用这个应用程序,但我们真正需要做的是在车辆移动时锁定应用程序。理想情况下,会出现某种类型的锁定屏幕,表示您在移动时不应该使用它,它会一直停留在车辆停止之前。
现在我们知道iOS设备上的GPS并不准确,所以我在想CoreMotion中的东西(可能与GPS结合)就可以了。基本上,当设备移动速度超过10kph时,我们希望激活此驱动器安全模式。
可以这样做吗?我们如何防止虚假标志(GPS随机跳转位置 - 正如我们所知道的那样)CoreMotion是否可以做到这一点?
最终,如果Apple在操作系统中引入这样的东西以阻止分心驾驶(开车时发短信/ FB /推特)会很棒,但我希望至少这一个应用程序,我们可以做到这一点。
提前感谢任何指示或提示。
答案 0 :(得分:0)
您是否尝试提高定位管理器的灵敏度?
locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
此外,请记住,具有Cellular MAY 的设备也会有所帮助,因为位置管理员还会尝试通过从手机信号塔反弹来对用户位置进行三角测量。
根据Apple的文档“Core Location”不只是使用GPS,它还使用Cellular Towers和WiFi:
核心位置框架可让您找到设备的当前位置,并在您的应用中使用该信息。该框架使用从内置蜂窝,Wi-Fi或GPS硬件获得的信息来对设备的位置修正进行三角测量。它会向您的代码报告位置,并根据您配置服务的方式,在收到新数据或改进数据时提供定期更新。