我正在开发一个应用程序。我正在使用CLLocation Manager获取位置更新。我知道当我调用开始位置更新方法gps关闭时,当我们调用停止位置更新gps关闭。但我想要关闭gps,我仍然希望使用手机信号塔或wifi来获取位置更新。如何做到这一点。
答案 0 :(得分:1)
您可以使用desiredAccuracy
的{{1}}属性告诉系统该位置的准确程度。您无法控制GPS是否开启,但将CLLocationManager
设置为较低的精度会消耗较少的电量。
来自CLLocationManager Class Reference:
接收器尽力达到要求的准确度;但是,实际的准确性并不能保证。
您应该为此属性分配一个适合您的使用方案的值。换句话说,如果您只需要几公里内的当前位置,则不应指定kCLLocationAccuracyBest以获得准确性。确定更准确的位置需要更多时间和更多功率。
在请求高精度位置数据时,位置服务提供的初始事件可能没有您请求的准确性。定位服务尽快提供初始事件。然后,它会继续以您请求的准确度确定位置,并在数据可用时根据需要提供其他事件。