在iOS 13中找到实际位置权限设置的正确方法是什么? (iOS 13.1.3)

时间:2019-10-23 18:36:03

标签: cllocationmanager ios13

我们有一个使用位置信息的应用程序。在iOS 13.1.3中,我们使用requestAlwaysAuthorization()提示用户输入位置权限。

如果用户选择“使用时”或“拒绝” ,iOS的行为符合预期-CLLocationManager.authorizationStatus()分别将状态报告为.authorizedAlways.denied

但是,如果用户选择“仅一次”,CLLocationManager.authorizationStatus()最初将报告.authorizedWhenInUse,但是稍后(在几毫秒内)它将切换为.authorizedAlways

这给我们的应用程序带来了一些问题-我们会根据初始报告的设置传递一条消息,然后在报告的设置发生更改时更改为另一条消息。我们有一些潜在的变通办法,但是我们做错了什么吗?有没有更好的方法来确定实际的位置设置,或者这仅仅是Apple的错误/古怪行为?

0 个答案:

没有答案