目前,我的应用程序仅请求一次使用当前位置的权限。如果用户不允许,则不会再次询问,除非他在常规设置中重置位置警告。我想让用户有机会在应用程序内稍后授予此权限。换句话说,如果他按下某个按钮,对话框应该再次出现。这可能吗?
感谢您的建议。
最佳答案
[CLLocationManager locationServicesEnabled]
只是告诉您设备上是否启用了位置服务。
根据this文档。
[CLLocationManager 授权状态]
将返回其中之一
typedef enum {
kCLAuthorizationStatusNotDetermined = 0,
kCLAuthorizationStatusRestricted,
kCLAuthorizationStatusDenied,
kCLAuthorizationStatusAuthorized
} CLAuthorizationStatus;
如果结果是kCLAuthorizationStatusDenied
,您可以通过将用户发送到settings.app来告诉用户允许使用位置服务
关于iphone - CLLocation再次请求许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4245299/