如何在iPhone上查找汽车速度?

3

我想在驾车时使用iPhone查找汽车速度,应该使用什么和如何使用?Core Motion还是Core Location?有没有文档或示例代码可用?


你需要使用CoreLocation。理论上是计算两个GPS坐标之间的距离,然后取两点之间的时间,看在这段时间内行驶了多少距离。 - rckoenes
非常感谢,那就是原始逻辑。 - Mashhadi
3个回答

3

嘿 - 你需要使用核心定位功能。

这里有一个非常好的教程 - http://www.vellios.com/2010/08/16/core-location-gps-tutorial/,我曾经按照这个教程进行过。这是整个系列中的一部分,但这个教程向你展示了如何计算设备的位置和速度。还有一个可供下载的示例项目。希望这能帮到你!


谢谢Mashhadi。如果您满意,能否请点击打勾将我的帖子标记为答案呢?谢谢。 - Chris Grant
谢谢,希望你觉得这个教程有用。 - Chris Grant
@chris:这段代码没有找到准确的速度,我无法找到错误,你有什么想法吗? - Mashhadi
什么不准确?您是否检查了用于计算速度的不同值以验证它们的正确性?GPS位置准确吗? - Chris Grant
显示经纬度但不改变速度,它显示 -1.0000 速度。 请指导我如何检查它是否可在WiFi或仅GPRS上检查? - Mashhadi
1
请更新您的教程链接,因为其显示“内部服务器错误”。 - Ali

2

CoreMotion 并不能提供太多帮助,因为它只是设备加速计和陀螺仪的抽象。你可以通过基本物理学测量加速度和减速度,并计算出速度,但我不建议这样做。

我会使用 CoreLocation 框架并依赖 GPS 定位。有大量的示例代码和 WWDC10 视频可供参考,所以请查阅相关资料。


0

使用 CLLocationManagerCLLocation 类中的 speed 属性

- (void) locationManager:(CLLocationManager *)manager 
     didUpdateToLocation:(CLLocation *)newLocation 
            fromLocation:(CLLocation *)oldLocation{

    NSLog("[Location Updated] \n Speed: %.2fm/s (%.1fkm/h)", newLocation.speed, newLocation.speed*3600/1000);

}

我一直得到速度为-1的结果。 - Maniganda saravanan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接