2

Question: Does the Significant Location Change background service drain battery easily? I'm trying to track longitude latitude readings when the there is a Significant Location Change. However, before starting, I just want to make sure that this doesn't drain the battery.

If the Location service described above does not drain battery, can someone recommend a way to store the location changes that would be battery efficient. My initial thought was to store the longitude latitude points locally on iPhone and then send the information to the server on a much less frequent basis (2 hours). Anyone have a better approach?

I'm trying to build a simple location tracking app that is battery efficient. Thanks all.

Ryan
  • 2,650
  • 3
  • 29
  • 43

2 Answers2

3

Significant location changes do not take any extra battery draining because the device uses information that the GSM system is working with anyway. It has to keep track of signal strength readings of multiple cell towers all the time anyway. Your app is only started/woken when certain criteria are met.

To conserve battery you have to watch two subsystems:

  • make sure that CoreLocation is turned off when you don't need it, GPS takes the most
  • make sure that you send location data to your server in bursts, to allows the transmitter to power down.

2 hrs might be too much because the user might be terminating the app and then the updates would never be made. Or if you implement an offline queue, they would only be sent next time the app is started. But that depends on your specific scenario.

Cocoanetics
  • 8,171
  • 2
  • 30
  • 57
1

It should be cellular tower triangulation, and not GPS location, which is more than enough for your needs. It shouldn't be battery heavy at all.
Same with uploading the location, do it rarely and you are fine.

Edit: Confused Core Location with Significant Location.

unexpectedvalue
  • 6,079
  • 3
  • 38
  • 62
  • It's too bad this is the selected answer because you are wrong @ssteinberg, the OP was not confused, there is a difference between running the LocationManager and becoming a listener on significant change notifications. Apple claims the latter does not run down the battery, but there are users that claim it does. That's what this question should really address. The other answer here is more correct, because he notes the difference and basically repeats what apple says: that as an observer, you are just getting access to data the phone has, not asking for new info. – Rob Jan 31 '13 at 16:50