Configurable Granularity

I don’t know how common this use case is, but what I use this kind of app for is recording broadly where I went and exercise in more detail (biking, hikes, etc). For general recording I want the basic route so I can note stops, but for exercise I want as close to the exact path as I can get.

What do you think about:

  • A setting to control the general level of detail (I’m not sure which CoreLocation APIs you’re using, but I feel like they had lots of options for this). This would let me get the info I needed generally and potentially reduce my battery usage.
  • An easy to access button to temporarily turn on very high detail recording (e.g. “start workout”)

Right now I’m using Google Maps Timeline and Strava to do these two things separately, but I’d really love it if Arc could replace both of them.

Unfortunately there’s no way to do that with the systems iOS provides.

I just wrote up a bunch of detail on why over in this thread.

But the short version is: There’s essentially two separate systems, one that provides very low detail and very low energy consumption (used by Google Timeline), and the other which provides full detail but higher energy consumption (used by Arc). There’s nothing between the two.

Technically apps can use the high detail system but request location updates only when the device has moved a desired number of metres. But in practice that doesn’t offer any significant energy savings, so there’s not really any point in using it. If you’re using the high detail system, might as well make use of all the detail. Asking iOS to throw away some of that detail doesn’t really save you any battery, so it’s less detail for no reward.

I would however say that you should be totally fine having Arc record all day, with very minimal battery life impact. If battery life is being significantly impacted, something is going wrong - it’s not normal.

Arc is aggressively optimised to do the highest detail recording at the lowest energy cost. The location recording typically uses such a small amount of energy that it won’t significantly impact battery life each day.

The energy expensive part of Arc is the UI - specifically the map view. When you browse around the app, exploring or editing the data, that uses large amounts of energy/battery, because lots of data needs to be loaded, modified, etc, and the map view needs to be repeatedly updated. Those are energy expensive tasks.

One minute of foreground time for Arc (eg browsing around or editing the timeline data) can use more battery than an hour of Arc recording location data in the background.