iPhone GPS в фоновом режиме никогда не возобновляется после паузы

Мое приложение должно отслеживать изменения местоположения пользователя в фоновом режиме и работает нормально, пока пользователь перемещается. Когда пользователь останавливается иCLLocationManager паузы через 10-20 минут или около того. Это указано в этом уведомлении:

-(void)locationManagerDidPauseLocationUpdates:(CLLocationManager *)manager{}

И это тоже хорошо для меня. Отлично, я экономлю батарею и т. Д.

Проблема в том, чтоCLLocationManager никогда не просыпается, когда пользователь снова начинает движениеметоды делегата никогда не запускаются, пока я не выложу свое приложение на передний план (становится активным):

//Never called back after CLLocationManager pauses:
-(void)locationManagerDidResumeLocationUpdates:(CLLocationManager *)manager{}
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{}

ПочемуlocationManagerDidResumeLocationUpdates никогда не вызывается после того, как устройство начинает двигаться снова? не должен»GPS также возобновляется автоматически (так как был автоматически приостановлен)? Есть ли способ возобновить GPS без пользователя?с взаимодействием?

Заявка имеет следующие заявленные в файле Info.plist:

И мои настройки CLLocationManager:

locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager setActivityType:CLActivityTypeFitness];
//I WANT pauses to save some battery, etc... That is why following line is commented out (default)
 //[locationManager setPausesLocationUpdatesAutomatically:NO];
 locationManager.distanceFilter = kCLLocationAccuracyNearestTenMeters;
 locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters;
 [locationManager startUpdatingLocation];

Ответы на вопрос(3)

Ваш ответ на вопрос