gpt4 book ai didi

iphone - 懒惰地请求定位服务

转载 作者:可可西里 更新时间:2023-11-01 03:31:56 25 4
gpt4 key购买 nike

当我第一次安装并启动我的应用程序时,它会立即请求位置服务,即使尚未调用 startUpdatingLocation。那时我什至还没有分配 CLLocationManager 实例。我希望在我实际调用电话后延迟完成此提示,这样用户就不会盲目地将其关闭。这个流程最近在 iOS 上有变化吗?我记得以前是懒得问的。我使用的是 5.1 固件。

最佳答案

这很有趣。我测试了你的假设,位置管理器甚至没有分配,但 iOS 位置权限对话框出现了。我尝试了以下故障排除。在每一步之后,我都在设备上运行该项目,但我只能在最后一步让位置弹出窗口出现。

  • 启动一个新应用
  • 在 info.plist 中需要定位服务
  • 在 info.plist 中需要 gps
  • 将 CoreLocation 链接到项目
  • 将核心位置导入标题
  • 为位置经理制作和综合属性
  • 向 CLLocationManager 询问 +authorizationStatus
  • 向 CLLocationManager 询问 +locationServicesEnabled
  • 分配初始化一个 CLLocationManager 实例
  • 告诉 CLLocationManager 开始更新位置。

只有最后一步才会出现提示。可以肯定的是,我什至创建了一个 viewController,它推送了第二个 View Controller ,该 View Controller 初始化了 CLLocationManager 并开始更新位置。只有在按下第二个 View Controller 时才会出现权限弹出窗口。这一切都是在 5.1 上运行的最新 Xcode。

我已经证明位置服务仍然只在您尝试打开位置的那一刻请求许可,就像它在以前的 SDK 中所做的那样。也许检查您的代码,也许在此处粘贴一些代码,以便我们进行更详细的介绍。 :)

关于iphone - 懒惰地请求定位服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10136099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com