ios - 如何知道是否已经询问了 locationManager.requestAlwaysAuthorization()

标签 ios iphone swift ios11

当请求用户的 iOS 位置权限时,我如何知道 locationManager.requestAlwaysAuthorization() 是否已经被请求给用户?

如果用户有 .AuthorizedWhenInUse 状态并且总是授权的请求被拒绝,下一个请求的 always-auth 提示将不会显示,所以我不会得到任何回调此请求启动。

有什么想法吗?

最佳答案

您需要检查 CLLocationManager.authorizationStatus() 并且只有在值为 .notDetermined 时才请求授权,因为这是授权提示实际出现的唯一情况显示。

关于ios - 如何知道是否已经询问了 locationManager.requestAlwaysAuthorization(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49794373/

相关文章:

ios - 动态管理标签文本无法正常工作

objective-c - 使用 Objective C 桥接 React Native 和 Swift 类

ios - UIActionSheet 未显示在弹出窗口中

ios - Eureka - PushRow - 禁用 'go back' 行为

iphone - 如何测量 OpenGL ES 的真实 FPS 性能?

ios - iOS 11.3 中状态栏背景颜色问题

swift - 如何在 Swift 中重复链接动画?

iphone - iOS - 缩放和裁剪 CMSampleBufferRef/CVImageBufferRef

javascript - iPhone webview 键盘将布局上推并保留

iphone - 使用 self 和不使用 self 访问类数据成员之间的区别