代码之家  ›  专栏  ›  技术社区  ›  Warrior

location manager在iPhone中找到当前位置后是否会重复找到当前位置?

  •  0
  • Warrior  · 技术社区  · 16 年前

    我是iPhone开发新手。我想知道CLLocationManager在确定当前位置时的工作流程。我使用下面的按钮事件代码来查找当前位置。

     self.locationManager = [[[CLLocationManager alloc] init] autorelease];
    
    self.locationManager.delegate = self; // Tells the location manager to send updates to this object
    
    [locationManager startUpdatingLocation];
    

    在里面

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

    我已经确定了lat和long值,并加载了当前位置。

    我想知道这两种情况

    1. 如果iPhone确定当前位置。

    2. 如果iPhone无法确定当前位置。

    1 回复  |  直到 7 年前
        1
  •  2
  •   David Gelhar    16 年前

    根据 CoreLocationManager reference

    位置服务返回一个 可能,返回缓存信息 如果可以的话。交货后 如果最小值为 阈值距离(按照 distanceFilter属性)为 价值是确定的。

    这似乎表明:(1)您可能会在缓存位置信息仍在尝试确定您当前位置时收到缓存位置信息,(2)您可能会收到多个更新,因为它可以更准确地确定位置。