How can I reduce the power usage in my application? What code can I use to implement this?
Asked
Active
Viewed 1,064 times
1 Answers
8
There are a couple different ways to reduce the power used when trying to get location information.
Use the last known location instead of trying to determine the current location.
// Get a Location Manager LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); // Try to get the last GPS based location Location l = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); // Fall back to cell tower based location if no prior GPS location if (l == null) { l = lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); }
Use a less expensive location provider. You can pick LocationManager.NETWORK_PROVIDER directly or specify the criteria you care about and let Android tell you which location provider to use.
// Select the criteria you care about Criteria c = new Criteria(); c.setAccuracy(Criteria.ACCURACY_COARSE); c.setPowerRequirement(Criteria.POWER_LOW); // Let the system tell you what provider you should use for your criteria LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); String p = lm.getBestProvider(c, true); // Call other Location Manager functions using the above provider...

Tim Kryger
- 11,166
- 4
- 52
- 41
-
Thank you very much i am implemented – Narasimha Apr 21 '10 at 11:40
-
in my application battery usage in 50% its suitable another way of battery usage and memory usage – Narasimha Apr 22 '10 at 05:37