Я использую CLGeocoder, чтобы получить координаты адреса, введенного пользователем, который будет отправлен на сервер.Но эта функция, которая вызывается перед отправкой POST серверу, занимает столько времени, что сервер уже отправил информацию и ответил до того, как были найдены координаты.Как мне дождаться завершения этой функции и уведомить метод, вызвавший ее, что она может продолжаться?
func getCoordinates(address: String){
let geoCoder = CLGeocoder()
geoCoder.geocodeAddressString(address, completionHandler: { (placemarks, error) in
let placemark = placemarks?.first
self.lat = String(format: "%f",(placemark?.location?.coordinate.latitude)!)
self.lon = String(format: "%f",(placemark?.location?.coordinate.longitude)!)
print("Lat: \(self.lat), Lon: \(self.lon)")
})
}
Я просматривал UNUserNotificationCenter и DispatchGroup, но безрезультатно ...?