I have an app where I need accurate location updates every K minutes -- even while in the background. Significant location-change updates are not sufficient for my needs, hence I need to use CLLocationManager
's startUpdatingLocation
method and keep it running forever.
I want to use as little power as possible while still getting my periodic location updates. It seems that the two options for saving power are (temporarily) setting the desiredAccuracy
property of the CLLocationManager to the least-accurate setting (e.g. 3-miles), or to defer location updates via the allowDeferredLocationUpdates*
method. However, these two techniques are mutually incompatible since deferred updates require a high accuracy setting (most accurate).
Does anyone know which approach saves more power, or if there is another way to minimize power usage while still getting periodic updates (even in the background).