didUpdateHeading标题从未在iOS 11下调用

时间:2017-09-29 12:16:09

标签: ios swift compass

使用XCode版本9.0(9A235),但使用Swift 3.x

我的应用程序在iOS 10.x上运行正常didUpdateHeading调用看起来不错,但在iOS 11.x下相同的应用程序崩溃导致didUpdateHeading永远不会被调用。

在IOS 11.x

中,我是否错过了使用指南针或其他内容的一些权限更改

2 个答案:

答案 0 :(得分:0)

好的,我在2017年WWDC上找到了答案。

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

两件事。

我要求授权总是在iOS 11.x中我没有获得授权,我需要添加所有这四个密钥。

<key>NSLocationAlwaysUsageDescription</key>
<string>Blah Blah</string>
<key>NSLocationUsageDescription</key>
<string>Blah Blah</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Blah Blah</string>

并且

<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>This one is new</string>

现在有效!!

答案 1 :(得分:0)

具有讽刺意味的是,两年后,我发现自己和我的答案。警告我来到这里是因为CoreLocation授权发生了一些重大变化。有关更多详细信息,请参见WWDC https://developer.apple.com/videos/play/wwdc2019/705/