Loading src/com/android/settings/fuelgauge/BatteryUtils.java +0 −31 Original line number Diff line number Diff line Loading @@ -511,37 +511,6 @@ public class BatteryUtils { return false; } /** * Check if the app represented by {@code uid} has battery usage more than {@code threshold} * * @param batteryStatsHelper used to check the battery usage * @param userManager used to init the {@code batteryStatsHelper} * @param uid represent the app * @param threshold battery percentage threshold(e.g. 10 means 10% battery usage ) * @return {@code true} if battery drain is more than the threshold */ public boolean isAppHeavilyUsed(BatteryStatsHelper batteryStatsHelper, UserManager userManager, int uid, int threshold) { initBatteryStatsHelper(batteryStatsHelper, null /* bundle */, userManager); final int dischargeAmount = batteryStatsHelper.getStats().getDischargeAmount( BatteryStats.STATS_SINCE_CHARGED); List<BatterySipper> batterySippers = batteryStatsHelper.getUsageList(); final double hiddenAmount = removeHiddenBatterySippers(batterySippers); for (int i = 0, size = batterySippers.size(); i < size; i++) { final BatterySipper batterySipper = batterySippers.get(i); if (batterySipper.getUid() == uid) { final int percent = (int) calculateBatteryPercent( batterySipper.totalPowerMah, batteryStatsHelper.getTotalPower(), hiddenAmount, dischargeAmount); return percent >= threshold; } } return false; } /** * Return {@code true} if we should hide anomaly app represented by {@code uid} */ Loading src/com/android/settings/fuelgauge/batterytip/AnomalyDetectionJobService.java +1 −4 Original line number Diff line number Diff line Loading @@ -143,7 +143,6 @@ public class AnomalyDetectionJobService extends JobService { StatsManager.EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES); final AnomalyInfo anomalyInfo = new AnomalyInfo( !ArrayUtils.isEmpty(cookies) ? cookies.get(0) : ""); final PackageManager packageManager = context.getPackageManager(); Log.i(TAG, "Extra stats value: " + intentDimsValue.toString()); try { Loading @@ -158,9 +157,7 @@ public class AnomalyDetectionJobService extends JobService { final boolean anomalyDetected; if (isExcessiveBackgroundAnomaly(anomalyInfo)) { anomalyDetected = batteryUtils.isPreOApp(packageName) && batteryUtils.isAppHeavilyUsed(batteryStatsHelper, userManager, uid, policy.excessiveBgDrainPercentage); anomalyDetected = batteryUtils.isPreOApp(packageName); } else { anomalyDetected = true; } Loading tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java +0 −12 Original line number Diff line number Diff line Loading @@ -580,18 +580,6 @@ public class BatteryUtilsTest { assertThat(mBatteryUtils.isForceAppStandbyEnabled(UID, PACKAGE_NAME)).isFalse(); } @Test public void testIsAppHeavilyUsed_usageMoreThanThreshold_returnTrue() { assertThat(mBatteryUtils.isAppHeavilyUsed(mBatteryStatsHelper, mUserManager, UID, 10 /* threshold */ )).isTrue(); } @Test public void testIsAppHeavilyUsed_usageLessThanThreshold_returnFalse() { assertThat(mBatteryUtils.isAppHeavilyUsed(mBatteryStatsHelper, mUserManager, UID, DISCHARGE_AMOUNT /* threshold */ )).isFalse(); } @Test public void testShouldHideAnomaly_systemAppWithLauncher_returnTrue() { final List<ResolveInfo> resolveInfos = new ArrayList<>(); Loading Loading
src/com/android/settings/fuelgauge/BatteryUtils.java +0 −31 Original line number Diff line number Diff line Loading @@ -511,37 +511,6 @@ public class BatteryUtils { return false; } /** * Check if the app represented by {@code uid} has battery usage more than {@code threshold} * * @param batteryStatsHelper used to check the battery usage * @param userManager used to init the {@code batteryStatsHelper} * @param uid represent the app * @param threshold battery percentage threshold(e.g. 10 means 10% battery usage ) * @return {@code true} if battery drain is more than the threshold */ public boolean isAppHeavilyUsed(BatteryStatsHelper batteryStatsHelper, UserManager userManager, int uid, int threshold) { initBatteryStatsHelper(batteryStatsHelper, null /* bundle */, userManager); final int dischargeAmount = batteryStatsHelper.getStats().getDischargeAmount( BatteryStats.STATS_SINCE_CHARGED); List<BatterySipper> batterySippers = batteryStatsHelper.getUsageList(); final double hiddenAmount = removeHiddenBatterySippers(batterySippers); for (int i = 0, size = batterySippers.size(); i < size; i++) { final BatterySipper batterySipper = batterySippers.get(i); if (batterySipper.getUid() == uid) { final int percent = (int) calculateBatteryPercent( batterySipper.totalPowerMah, batteryStatsHelper.getTotalPower(), hiddenAmount, dischargeAmount); return percent >= threshold; } } return false; } /** * Return {@code true} if we should hide anomaly app represented by {@code uid} */ Loading
src/com/android/settings/fuelgauge/batterytip/AnomalyDetectionJobService.java +1 −4 Original line number Diff line number Diff line Loading @@ -143,7 +143,6 @@ public class AnomalyDetectionJobService extends JobService { StatsManager.EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES); final AnomalyInfo anomalyInfo = new AnomalyInfo( !ArrayUtils.isEmpty(cookies) ? cookies.get(0) : ""); final PackageManager packageManager = context.getPackageManager(); Log.i(TAG, "Extra stats value: " + intentDimsValue.toString()); try { Loading @@ -158,9 +157,7 @@ public class AnomalyDetectionJobService extends JobService { final boolean anomalyDetected; if (isExcessiveBackgroundAnomaly(anomalyInfo)) { anomalyDetected = batteryUtils.isPreOApp(packageName) && batteryUtils.isAppHeavilyUsed(batteryStatsHelper, userManager, uid, policy.excessiveBgDrainPercentage); anomalyDetected = batteryUtils.isPreOApp(packageName); } else { anomalyDetected = true; } Loading
tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java +0 −12 Original line number Diff line number Diff line Loading @@ -580,18 +580,6 @@ public class BatteryUtilsTest { assertThat(mBatteryUtils.isForceAppStandbyEnabled(UID, PACKAGE_NAME)).isFalse(); } @Test public void testIsAppHeavilyUsed_usageMoreThanThreshold_returnTrue() { assertThat(mBatteryUtils.isAppHeavilyUsed(mBatteryStatsHelper, mUserManager, UID, 10 /* threshold */ )).isTrue(); } @Test public void testIsAppHeavilyUsed_usageLessThanThreshold_returnFalse() { assertThat(mBatteryUtils.isAppHeavilyUsed(mBatteryStatsHelper, mUserManager, UID, DISCHARGE_AMOUNT /* threshold */ )).isFalse(); } @Test public void testShouldHideAnomaly_systemAppWithLauncher_returnTrue() { final List<ResolveInfo> resolveInfos = new ArrayList<>(); Loading