【问题标题】:CLLocationManager default coordinate valuesCLLocationManager 默认坐标值
【发布时间】:2011-10-15 16:16:30
【问题描述】:
我正在学习开发 iOS 应用,我只在模拟器上试用它们。现在,在我的应用程序中,我使用 CLLocationManager 来获取我当前的位置坐标。但是当我运行应用程序时,无论我在哪里,我都会得到所有坐标值(高度、经度、纬度)的相同结果。即使我搬到另一个地方,它们也不会改变。我想知道的是 CLLocationManager 如何获取值?如果它在模拟器上不起作用,那么永远不会改变的值来自哪里?根据坐标,我猜这是一个默认值,如果没有坐标可用,则显示伦敦。
【问题讨论】:
标签:
ios
cllocationmanager
【解决方案1】:
在菜单栏上,进入Debug,然后选择Location,Custom Location,然后你就可以输入坐标来模拟了。模拟器不会总是为您提供与设备相同的反馈。
【解决方案2】:
模拟器可能会使用 Skyhook 来检查您绑定到 WiFi 热点的位置(如果添加了它的坐标),并且如果您在 WiFi 覆盖范围内移动,那么您的位置根本不会改变。
【解决方案3】:
模拟器总是提供苹果总部在库比蒂诺的位置。它不使用计算机的 gps 或位置。
【解决方案4】:
尝试重置 iOS 模拟器,清除所有应用程序和设置。
当您使用应用程序运行 CLLocationManager 时,它可能会请求使用位置的权限,就像您在设备中看到的一样。
我一直在使用 iOS 模拟器,它一直为模拟器提供我电脑的位置。我猜它受您的互联网连接和 IP 地址的影响。由于许多计算机没有配备 GPS,因此这是了解计算机位置的唯一方法。