2013-07-25 41 views
0

我们有一个用于车辆周围的应用程序。它不应该在车辆行驶时使用(法律&健康&安全要求)。我们可以将设备锁定为仅通过引导访问使用这一应用程序,但我们真正需要做的也是在车辆移动时锁定应用程序。理想情况下,会出现某种锁定屏幕,说你在移动时不应该使用它,它会停留在那里,直到车辆停下来。如何确定iOS设备是停止还是移动(驾驶)

现在我们知道在iOS设备上的GPS并不是那么准确,所以我在考虑CoreMotion中的某些东西(可能与GPS结合)会有所斩获。实际上,我们希望在设备移动速度超过10kph时激活此安全模式。

可以这样做吗?我们如何防止错误的标志(GPS随机跳跃位置 - 就像它已知的那样)CoreMotion是否可以做到这一点?

最终,如果苹果在操作系统中引入了这样的东西来阻止分心驾驶(开车时发短信/ FB/tweeting),但我希望至少有一个应用程序,我们可以做到这一点。

在此先感谢您提供任何指针或提示。

+0

我认为你可以使用加速度传感器。不确定,但在维基百科上阅读http://en.wikipedia.org/wiki/Accelerometer – Jageen

+0

GpS on iphone4/4s,可能也是iphone5,是市场上最好的GPS芯片之一。您可以通过Gps超级可靠地确定设备是否正在移动。你有没有尝试过? – AlexWien

+0

@Jordan M:你会得到解决方案吗?如果你已经实施,那么你可以在这里分享吗?在此先感谢.... – Nikh1414

回答

0

您是否尝试过增加位置管理器的灵敏度?

locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation; 

另外,请记住,与蜂窝MAY设备也有帮助,因为外景经理也将尝试反弹的信号发射塔的三角测量用户的位置。

根据苹果的文档“核心位置”并不只是使用GPS,它也使用蜂窝塔和WiFi:

核心位置框架,可以找到该设备的当前位置,并使用该信息在你的应用程序。该框架使用从内置蜂窝,Wi-Fi或GPS硬件获取的信息为设备定位三维定位。它会向您的代码报告该位置,并根据您配置服务的方式,在接收新数据或改进数据时提供定期更新。

Apple Core Location Documentation

+0

你的答案的第一部分是确定的。但是基于细胞塔的定位与移动检测的定位是什么? – AlexWien

+0

在GPS被广泛用于手机之前,基于位置的服务被用于使用移动定位系统,这里有一篇文章:http://searchengineland.com/cell-phone-triangulation-accuracy-is-all-over-the-map- 14790 – Khattab

相关问题