Не получается местоположение пользователя - PullRequest
0 голосов
/ 23 марта 2020

Мне нужно узнать местоположение пользователя.

Я включил все три ключа, необходимые в info.plist

enter image description here

In Контроллер представления Я объявил переменные:

       // Used to start getting the users location
var locationManager = CLLocationManager()
var currentLocation: CLLocation!

Я расширил контроллер представления с помощью CLLocationManagerDelegate

class HomeViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout, UISearchBarDelegate, CLLocationManagerDelegate

И я включил этот код в viewDidLoad:

  locationManager.requestWhenInUseAuthorization()


    if (CLLocationManager.authorizationStatus() == CLAuthorizationStatus.authorizedWhenInUse) || (CLLocationManager.authorizationStatus() == CLAuthorizationStatus.authorizedAlways) {

                currentLocation = locationManager.location
                print(currentLocation.coordinate.latitude)
                print(currentLocation.coordinate.longitude)

            }

У пользователя запрашивается разрешение, но координаты не получены.

Что я делаю не так?

1 Ответ

2 голосов
/ 23 марта 2020

Вы должны вызвать startupdatinglocation () https://developer.apple.com/documentation/corelocation/cllocationmanager/1423750-startupdatinglocation, чтобы получать сообщения CLLocationManagerDelegate

. Вы можете проверить https://fluffy.es/current-location/ для полного урока

...