我的应用曾经使用requestAlwaysAuthorization
和NSLocationAlwaysUsageDescription
的Info.plist条目。
我将其更改为使用带有requestWhenInUseAuthorization
的Info.plist条目的NSLocationWhenInUseUsageDescription
。
更改后,应用无法再获取该位置。它只会收到didChangeAuthorizationStatus
kCLAuthorizationStatusNotDetermined
。操作系统不会提示更改权限(这是有道理的,因为它已经具有永久权限。应用程序的设置菜单不包含位置信息条目(这将允许我撤销或批准它)。{{ 1}}永远不会被调用。
然后我切换回didFailWithError
使用requestWhenInUseAuthorization
的Info.plist条目并重新启动应用。操作系统会提示始终更改权限。我授予它并且位置开始完美。
在重新安装之前删除应用程序无效。
我正在使用IOS 9.2。这发生在真正的iPhone和模拟器上。我将模拟器的位置设置为Apple。
答案 0 :(得分:1)
对于我来说,位置管理器在模拟器上可能是一个真正的命中或错过,有时它运作良好,有时它不会。你试过在设备上运行吗?