如果在第一次詢問時拒絕了位置檢測,是否有任何方法要求用戶授予位置檢測權限?Swift - 如果未授予核心位置請求權限
0
A
回答
3
爲了得到用戶的當前位置,你需要聲明:
let locationManager = CLLocationManager()
在viewDidLoad中():
// Ask for Authorisation from the User.
self.locationManager.requestAlwaysAuthorization()
// For use in foreground
self.locationManager.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled() {
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
locationManager.startUpdatingLocation()
}
然後在CLLocationManagerDelegate方法就可以得到用戶的當前位置座標:
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
var locValue:CLLocationCoordinate2D = manager.location.coordinate
print("locations = \(locValue.latitude) \(locValue.longitude)")
}
如果用戶拒絕了該位置,然後給他選擇更改位置pe從設置中刪除:
func locationManager(manager: CLLocationManager, didFailWithError error: NSError) {
print("error::: \(error)")
locationManager.stopUpdatingLocation()
let alert = UIAlertController(title: "Settings", message: "Allow location from settings", preferredStyle: UIAlertControllerStyle.Alert)
self.presentViewController(alert, animated: true, completion: nil)
alert.addAction(UIAlertAction(title: TextMessages().callAlertTitle, style: .Default, handler: { action in
switch action.style{
case .Default: UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString)!)
case .Cancel: print("cancel")
case .Destructive: print("destructive")
}
}))
}
0
不,您可以在提醒內部的應用程序中提醒他們,例如「爲了更好的使用,我們會建議您給我們使用您的位置的權限」。並添加「轉到設置」按鈕,將用戶重定向到應用程序的位置權限。
相關問題
- 1. Alert Box要求用戶授予位置權限不顯示
- 2. ANDROID未授予權限
- 3. PackageManager:未授予權限
- 4. Android - 未授予URI權限
- 5. 授予Oracle授予權限
- 6. IIS7未能授予最小的權限請求
- 7. 核心位置管理不授權
- 8. 如何授予在Oracle中授予權限的權限
- 9. AH01626:要求所有授予的授權結果:授予
- 10. MySQL - 授予權限
- 11. mysql授予權限
- 12. 授予LIST權限
- 13. 授予dbms_crypto權限
- 14. 未經授權的結果AJAX請求
- 15. 授予權限,如Linux
- 16. 如何授予discoverUserInfoWithUserRecordID權限?
- 17. 申請授予臨時權限
- 18. ORA-01952:系統權限未授予'ROJIB
- 19. 測試尚未授予的Facebook權限
- 20. 未自動授予攝像頭權限
- 21. java - 已截圖,但未授予權限?
- 22. 授予Android權限 - 未知值
- 23. MVC核心授權
- 24. Ajax Post請求未授權
- 25. 如果未授予權限,請停止上載到SQL數據庫
- 26. 驗證用戶使用FB.getLoginStatus授予請求的權限
- 27. 請求授予權限時,不會顯示requestpermission對話框
- 28. 如何在授予位置權限後執行任務ios
- 29. perl DBI授予權限
- 30. 授予權限的路徑
這是認真的答案? –
@NumanKaraaslan是的。如果你仔細閱讀,你會發現這是接受答案的簡短變體。 – Lexorus