Чтобы проверить, есть ли у пользователя доступ к местоположению или нет, используйте следующий код:
var isPermissionAvailable: Bool {
let status = CLLocationManager.authorizationStatus()
switch status {
case .authorizedAlways, .authorizedWhenInUse:
return true
case .denied, .restricted, .notDetermined:
requestForLocation()
return false
}
}
func requestForLocation() {
// Edit
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.startUpdatingLocation()
}
Чтобы показать всплывающее окно при запуске приложения, вы можете использовать следующий код в applicationDidFinishLaunching(_ aNotification:)
в AppDelegate
классе:
if isPermissionAvailable {
// Do your work on permission available
}