ユーザーの場所を初期化して更新する非常に単純なアプリの例があります..デバイスでは、1秒ごとに別のコールバックの場所が正常にスローされますが、デバイス(iOS7を実行しているiPhone)ではメソッドが1回呼び出され、不思議なことに停止します...
//Setup Location Manager in ViewDidLoad
locationManager = [[CLLocationManager alloc] init];
[locationManager setDistanceFilter:kCLDistanceFilterNone];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
[locationManager setDelegate:self];
[locationManager startUpdatingLocation];
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
NSLog(@"location services not turned on");
}
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
NSLog(@"loactions %@", locations);
}
-(void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
NSLog(@"new location %f, and old %f", newLocation.coordinate.latitude, newLocation.coordinate.longitude);
}
iOS6 では、このアプリは完全に機能し、デバイスの位置情報を継続的に更新しました。iOS7 から何が変わったのでしょうか?