Я думаю, что iOS 12 закрывает соединение до того, как последний запрос вернет результат, когда приложение перейдет в фоновый режим.Вы можете использовать следующий код для решения вашей проблемы:
if ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
[self sendBackgroundDataToServer];
}
- (void) sendBackgroundDataToServer {
UIBackgroundTaskIdentifier bgTask = UIBackgroundTaskInvalid;
bgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[[UIApplication sharedApplication] endBackgroundTask:bgTask];
}];
NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:2];
[dictionary setObject:[NSNumber numberWithDouble:lc.coordinate.latitude] forKey:@"floLatitude"];
[dictionary setObject:[NSNumber numberWithDouble:lc.coordinate.longitude] forKey:@"floLongitude"];
// send to server with a synchronous request
// AFTER ALL THE UPDATES, close the task
if (bgTask != UIBackgroundTaskInvalid) {
[[UIApplication sharedApplication] endBackgroundTask:bgTask];
}
}