在用户拒绝后请求位置许可。 Swift3.IOS

Ask permission for location after user rejected it. Swift 3. IOS

我是 ios 的新手,但有以下问题。

应用启动时,用户应接受位置权限。这很好用。如果他不允许,某些功能将无法使用。

但是,我希望当用户尝试使用这些功能时,他会收到一条警告,提示他没有接受位置许可。这个我也做了。但是我希望警报有一个按钮,允许他现在接受它(这样他就不必进入他的 phone 的设置来做到这一点)我无法做到这一点。

我为这样的警报创建了一个处理程序,但它无法接受权限。 这是处理程序...

 func someHandler(alert: UIAlertAction!) {
    print("User now wants to let location from new")

    self.locationManager.requestWhenInUseAuthorization()

    if CLLocationManager.locationServicesEnabled() {
        locationManager.delegate = self
        locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
        locationManager.startUpdatingLocation()
    }

}

这是不是错了,我还应该把它放在什么地方。目前,当调用处理程序时,位置服务未打开。

谢谢

你不能为所欲为。只有用户可以通过转到“设置”应用更改设置。

如果您可以通过编程方式更改权限,那将是一场安全噩梦。并且没有 API 强制 iOS 第二次显示权限警报。