iphone - CLLocation再次请求许可

标签 iphone permissions cllocationmanager iphone-sdk-4.1

目前,我的应用程序仅请求一次使用当前位置的权限。如果用户不允许,则不会再次询问,除非他在常规设置中重置位置警告。我想让用户有机会在应用程序内稍后授予此权限。换句话说,如果他按下某个按钮,对话框应该再次出现。这可能吗?

感谢您的建议。

最佳答案

[CLLocationManager locationServicesEnabled] 只是告诉您设备上是否启用了位置服务。

根据this文档。

[CLLocationManager 授权状态]

将返回其中之一

typedef enum {
   kCLAuthorizationStatusNotDetermined = 0,
   kCLAuthorizationStatusRestricted,
   kCLAuthorizationStatusDenied,
   kCLAuthorizationStatusAuthorized
} CLAuthorizationStatus;

如果结果是kCLAuthorizationStatusDenied,您可以通过将用户发送到settings.app来告诉用户允许使用位置服务

关于iphone - CLLocation再次请求许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4245299/

相关文章:

iphone - 在什么情况下我必须将代码放入 -beginUpdates -endUpdates block 中,什么时候它是可选的?

iphone - 我可以在 iPhone/iPad 上为 HTML5 视频换肤吗?

python - 在 Django 中提供大文件(高负载)

php - 连接到本地主机时 Laravel 5 '..failed to open stream: Permission denied' 异常

python - 仅限网站的权限

ios - 后台的 iPhone GPS 在暂停后永远不会恢复

ios - CLLocationManager 在设备上不工作

iphone - 在 Safari 中拦截 URL 和打开 URL

ios - 在钥匙串(keychain)服务中使用 SecItemUpdate

ios - 使用 LocationManager 时减少电池使用