am 8b4cdbeb: Fix recent apps in appops. Prior to this fix all apps would disappear from settings->location 15 minutes after the request was first made (even if request was ongoing). Tested this out - apps requesting location longer than the threshold stay in the list
* commit '8b4cdbebcfb53b57ac2afec1b1e3377d6a02bb21':
Fix recent apps in appops. Prior to this fix all apps would disappear from settings->location 15 minutes after the request was first made (even if request was ongoing). Tested this out - apps requesting location longer than the threshold stay in the list, and apps stay in the list exactly the threshold time after the location request ENDS.
diff --git a/src/com/android/settings/location/RecentLocationApps.java b/src/com/android/settings/location/RecentLocationApps.java
index 1fa8aac..65fef80 100644
--- a/src/com/android/settings/location/RecentLocationApps.java
+++ b/src/com/android/settings/location/RecentLocationApps.java
@@ -194,9 +194,10 @@
List<AppOpsManager.OpEntry> entries = ops.getOps();
boolean highBattery = false;
boolean normalBattery = false;
+ // Earliest time for a location request to end and still be shown in list.
+ long recentLocationCutoffTime = now - RECENT_TIME_INTERVAL_MILLIS;
for (AppOpsManager.OpEntry entry : entries) {
- // If previous location activity is older than designated interval, ignore this app.
- if (now - entry.getTime() <= RECENT_TIME_INTERVAL_MILLIS) {
+ if (entry.isRunning() || entry.getTime() >= recentLocationCutoffTime) {
switch (entry.getOp()) {
case AppOpsManager.OP_MONITOR_LOCATION:
normalBattery = true;