我想实现一种功能,其中我将GPS用于位置更新,而当用户不移动时,我希望GPS更新被暂停。
按照“通过定位服务保持步伐”视频,我这样做是:

 //Configure Location Manager
 self.theLocationManager = [[CLLocationManager alloc]init];
[self.theLocationManager setDelegate:self];
[self.theLocationManager setDesiredAccuracy:kCLLocationAccuracyBest];
[self.theLocationManager setActivityType:CLActivityTypeFitness];

 NSLog(@"Activity Type Set: CLActivityTypeFitness");

[self.theLocationManager setPausesLocationUpdatesAutomatically:YES];
[self.theLocationManager startUpdatingLocation];

代表们:
- (void)locationManager:(CLLocationManager *)manager
    didUpdateLocations:(NSArray *)locations
{
    NSLog(@"Started location Updates");
}


- (void)locationManagerDidPauseLocationUpdates:(CLLocationManager *)manager
{
    NSLog(@"Pausing location Updates");
}

- (void)locationManagerDidResumeLocationUpdates:(CLLocationManager *)manager
{
    NSLog(@"Resuming location Updates");

    UIAlertView *pop = [[UIAlertView alloc]initWithTitle:@"Info" message:@"Location    Updates resumed" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
    [pop show];
    [pop release];
}

我没有得到期望的行为,并且当设备处于空闲状态时,甚至没有调用委托(delegate)“didPause ..”和“didResume ...”。

理想情况下,GPS更新必须停止并恢复,具体取决于设备和CLActivityType的状态,但实际情况并非如此。

谁能帮我,我在做什么错?

提前致谢。

最佳答案

如果将设备放在同一位置约15分钟,则应该发生暂停。

关于ios6 - 在iOS 6中自动无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13561080/

10-13 06:34