【问题标题】:Using GPS with CLLocationManager, some issue将 GPS 与 CLLocationManager 一起使用,出现一些问题
【发布时间】:2011-11-18 12:35:05
【问题描述】:

我想和你谈谈 iPhone coreLocation。阅读周围我搞砸了,比我以前知道的要多得多,我想出了关于它的问题。

我从你开始,我在我的城市做了一些测试,但结果很差,经常收到参数 -1 到 newLocation.course 和 newLocation.speed 有“5”作为 newLocation.horizontalAccuracy。

1) 指定主要在后台测量测量值,就像许多其他应用程序一样,例如步行,我应该去什么以及如何设置我的 CLLocationManager 的参数?

代码如下:

   locationM = [[CLLocationManager alloc] init];
   [locationM setDelegate:self];
   [locationM setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
   [locationM setDistanceFilter:kCLDistanceFilterNone];
   [locationM startUpdatingLocation];

2) 我认为跟踪行驶距离、速度和高度的精确方法是每隔几秒调用一次 CLLocation 的委托,而 NSTimer 将调用包含 @987654326 的方法@。你认为是正确的获取方式吗?

3) 我怎样才能为速度提取好的结果?我以为每次我得到一个新位置时,都会与前一个位置进行比较,并通过计算推断从 A 点到 B 点的速度,例如使用[newLocation distanceFromLocation: oldLocation]。或者如果你设置速度属性资产返回良好的结果?

您有什么想法或技巧可以让应用正常运行吗?

简单地重复这些功能,必须根据跑步、骑自行车等运动获得以公里/小时为单位的速度……平均精确地跟踪路线,不损坏电池并严格在后台工作

我相信全面的回应可以成为许多新人担任GPS负责人的指南

【问题讨论】:

标签: objective-c xcode gps cllocationmanager


【解决方案1】:

你很接近。我会使用您的过滤器来整理您的位置更新。确保它们对您来说足够准确。应该有一个标题,使用那个。然后只需在您的 -didUpdateToLocation 方法中接受位置更新。我相信在 -startUpdatingLocation 运行时每秒都会更新一次位置。不需要计时器或任何华而不实的东西。

你剩下的问题只是数学问题。计算行进距离和时间。在这方面我帮不了你。但是还有很多其他答案可以满足您的需求。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-15
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2010-10-26
    • 2020-06-17
    • 1970-01-01
    相关资源
    最近更新 更多