location-samples icon indicating copy to clipboard operation
location-samples copied to clipboard

How can I reduce power usage and still GET location updates in a location-based Android application?

Open kujaska opened this issue 1 year ago • 0 comments

I tried this Google example code - https://github.com/android/location-samples/tree/master/ForegroundLocationUpdates:

  • it works fine with default settings:

priority = LocationRequest.PRIORITY_HIGH_ACCURACY

but it keeps my Android 5 phone WARM and will DRAIN its battery in ~ 8 hours

  • if I opt to:

priority = LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY

then I never get updated location but only the old location.

Should I implement some auto-job e.g. with workmanager https://developer.android.com/topic/libraries/architecture/workmanager which will let's say 3-4 times per hour:

  • switch on LocationRequest with PRIORITY_HIGH_ACCURACY
  • get updated location
  • switch off LocationRequest till next scheduled time?

Or is there any other better solution?

Thanks!

kujaska avatar Aug 08 '23 12:08 kujaska