我是新來的ios,但有以下問題。用戶拒絕後請求位置權限。 Swift 3. IOS
當應用程序啓動時,用戶應該接受位置權限。這工作正常。如果他不允許,某些功能不起作用。
但是,我希望當用戶嘗試使用這些功能時,他會收到警報,表示他不接受位置權限。我也這樣做了。不過,我希望警報具有一個允許他現在接受的按鈕(所以他不必在手機上進行設置)。這是我無法做到的。
我爲此類警報製作了一個處理程序,但它無法接受權限。 這裏是處理程序...
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()
}
}
這是錯誤的,還有什麼我應該說的。目前,當處理程序被調用時,位置服務未打開。
謝謝
你爲什麼要求這兩個授權?只要求你需要的那個。 – rmaddy
你爲什麼要求兩個位置權限?即_Always_和_WhenInUse_。你只需要申請一個。 _WhenInUse_:每當應用程序處於前景中時都會獲取位置,而_Always_同時適應前景和背景。 – eshirima
對,修正了這個問題,並編輯了我的問題。 – RJB