如何在iOS 13中使用`requestAlwaysAuthorization`在CLLocationManager中请求地理位置?

时间:2019-08-14 08:59:36

标签: ios geolocation cllocationmanager cllocation ios13

当应用在iOS 13中使用Always Allow在CLLocationManager中请求地理定位时,用户似乎无法获得requestAlwaysAuthorization选项。 而是显示Allow While Using AppAllow Once

环境:iOS 13 beta 6,Xcode beta 5,iPhone X

enter image description here

如何向用户提示Always Allow

3 个答案:

答案 0 :(得分:1)

工作正常。如果在这种情况下,用户按下最佳肯定答案Allow While Using App,则操作系统将记住这一点。当发生某些特殊事件时,系统会在某个时间点向用户显示警报。系统将显示带有Keep Only While UsingChange to Always Allow选项的警报。 有关更多信息,您可以从2:40观看WWDC 2019 here上的视频。

答案 1 :(得分:0)

您可能需要在info.plist中包含所有这些键的描述。

enter image description here

答案 2 :(得分:0)

将这些添加到需要用户位置的页面中。

locationManager.requestWhenInUseAuthorization()
locationManager.requestAlwaysAuthorization()