Я создаю это приложение, и ему нужно получить местоположение пользователя - его все работает правильно, дело в том, что время от принятия использования служб определения местоположения до получения фактического местоположения как 5 секунд - это нормально? я использовал другие приложения, где он идет гораздо быстрее ..CLLocationManager медленное получение местоположения, Swift
Вот что мой код выглядит следующим образом:
override func viewDidLoad() {
super.viewDidLoad()
// Ask for Location-Authorisation from the User.
self.locationManager.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled() {
locationManager.delegate = self
locationManager.requestLocation()
}
mapView.delegate = self
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let locValue: CLLocationCoordinate2D = manager.location!.coordinate
let initialLocation = CLLocation(latitude: locValue.latitude, longitude: locValue.longitude)
self.centerMapOnLocation(initialLocation)
}
func locationManager(manager: CLLocationManager, didFailWithError error: NSError) {
print("could not get location")
}
Но время от приложения получает место, чтобы поместить в centerMapOnLocation-функции, кажется, довольно долго. Что можно ожидать, когда вы получаете местоположение пользователя? Я тестирую Wi-Fi соединение, поэтому я знаю его не потому, что интернет медленный, либо его плохое соединение ...
У кого-нибудь есть идея? :)
С уважением!
попробуйте установить точность и использовать locationManager.startUpdatingLocation(). Я делаю это и получаю ответ в течение секунды (на устройстве). –
Удивительный! locationManager.startUpdatingLocation() сделал трюк! Я поменял его на .requestLocation(), и теперь он работает как шарм! Спасибо @JensPeter - хотел бы дать вам правильный ответ, но я не могу назвать его комментарий:/напишите ответ, и я приму его :) –