Ответ: НЕТ (В настоящее время нет способа снова запросить пользователя о разрешении Pu sh, пока пользователь не переустановит приложение.)
Но вы можете проверить разрешения и открыть приложение настроек. Код для проверки и открытия настроек приложения:
func askForLocationPermission() {
let status = CLLocationManager.authorizationStatus()
if status == .denied || status == .restricted {
let alert = UIAlertController(title: "your title", message: "your message", preferredStyle: .alert)
present(alert, animated: true, completion: nil)
alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { action in
switch action.style{
case .default: if #available(iOS 10.0, *) {
UIApplication.shared.open(NSURL(string: UIApplication.openSettingsURLString)! as URL, options: convertToUIApplicationOpenExternalURLOptionsKeyDictionary([:]), completionHandler: nil)
} else {
// Fallback on earlier versions
}
case .cancel: print("cancel")
case .destructive: print("destructive")
@unknown default: break
}
}))
}
}