【问题标题】:Location Services permission is empty位置服务权限为空
【发布时间】:2018-03-26 07:27:20
【问题描述】:

我正在使用位置管理器来跟踪区域。在一台设备上,我的应用程序表现得很奇怪。位置权限被授予始终使用,但位置管理器返回 0,0 作为当前坐标,当我转到设置/隐私/位置服务/应用程序时 - 既不选择从不也不选择始终。 这发生在 iOS 11.0.2

我设置了 plist 键 (NSLocationAlwaysUsageDescription) 并仅使用 requestAlwaysAuthorization,因为它是区域监控所必需的。

一件重要的事情 - 谷歌地图和苹果地图正常使用当前位置。

【问题讨论】:

  • 尝试在.plist文件中添加这个<key>NSLocationWhenInUseUsageDescription</key> <string>Location When In Use Usage Description</string>

标签: ios permissions mapkit geofencing location-services


【解决方案1】:

正如 Brad Jensen 在 WWDC 演讲中解释的那样,Apple 已决定强制用户“始终”为应用提供位置访问权限是一种糟糕的用户体验:

https://developer.apple.com/videos/play/wwdc2017/713/

因此,当您使用 iOS 11 SDK 构建应用时,您现在需要在所有情况下(如果您使用位置)提供NSLocationWhenInUseUsageDescription 密钥。对于“始终”访问,您还可以提供第二个密钥,现在称为 NSLocationAlwaysAndWhenInUseUsageDescription

【讨论】:

    猜你喜欢
    • 2017-09-20
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 2017-11-02
    • 1970-01-01
    • 1970-01-01
    • 2013-02-15
    • 2016-02-25
    相关资源
    最近更新 更多