我想知道在 Xcode 模拟器中是否可以测试重大位置变化服务(startMonitoringSignificantLocationChanges 方法),或者它只能在实际设备上运行。 请注意,我已经在模拟器中尝试过它,但它没有工作,但我不确定这是因为它不适用于模拟器还是因为我做错了什么。
谢谢
我想知道在 Xcode 模拟器中是否可以测试重大位置变化服务(startMonitoringSignificantLocationChanges 方法),或者它只能在实际设备上运行。 请注意,我已经在模拟器中尝试过它,但它没有工作,但我不确定这是因为它不适用于模拟器还是因为我做错了什么。
谢谢
我之前在SO上回答过这个问题,使用模拟器测试-startMonitoringSignificantLocationChanges并不是一种准确的方法。
此方法主要依赖于基站三角定位和切换。你偶尔可以从模拟器获得初步的定位,但仅限于此。之后它将不会更新任何其他位置。你需要在设备上进行测试,以查看你的程序是否正确响应此方法。
另一种选择是测试您可能想要在-didUpdateToLocation回调中执行的任何逻辑,并改用-startUpdatingLocation。虽然这对电池寿命是一个很大的缺点,但它将允许您获得准确的位置更新以进行测试。当你在模拟器中解决了所有问题后,将所有内容转移到重要位置更改方法中,并在设备上进行测试。
希望这有所帮助。
startMonitoringSignificantLocationChanges
非常好用,触发didUpdateLocations:
甚至不到5分钟,立即开始工作。谢谢Ryan H. - naomimichiko