Update battery usage app list filter logic:
(1) Add app screen on time thrshold 100 ms. (2) Change app battery comsuption threshold from 0.1 mA to 1 mA. Apps meet one of above conditions will be shown. Bug: 264840285 Test: manual Change-Id: Icfb304f09c49248397350ebe55bf06f3eb82d639
This commit is contained in:
@@ -35,6 +35,11 @@ public interface PowerUsageFeatureProvider {
|
|||||||
*/
|
*/
|
||||||
boolean isBatteryUsageEnabled();
|
boolean isBatteryUsageEnabled();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a threshold (in milliseconds) for the minimal screen on time in battery usage list
|
||||||
|
*/
|
||||||
|
double getBatteryUsageListScreenOnTimeThresholdInMs();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a threshold (mA) for the minimal comsume power in battery usage list
|
* Returns a threshold (mA) for the minimal comsume power in battery usage list
|
||||||
*/
|
*/
|
||||||
|
@@ -71,9 +71,14 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double getBatteryUsageListScreenOnTimeThresholdInMs() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double getBatteryUsageListConsumePowerThreshold() {
|
public double getBatteryUsageListConsumePowerThreshold() {
|
||||||
return 0.0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -91,6 +91,8 @@ public class BatteryDiffData {
|
|||||||
private static void purgeBatteryDiffData(
|
private static void purgeBatteryDiffData(
|
||||||
final PowerUsageFeatureProvider featureProvider,
|
final PowerUsageFeatureProvider featureProvider,
|
||||||
final List<BatteryDiffEntry> entries) {
|
final List<BatteryDiffEntry> entries) {
|
||||||
|
final double screenOnTimeThresholdInMs =
|
||||||
|
featureProvider.getBatteryUsageListScreenOnTimeThresholdInMs();
|
||||||
final double consumePowerThreshold =
|
final double consumePowerThreshold =
|
||||||
featureProvider.getBatteryUsageListConsumePowerThreshold();
|
featureProvider.getBatteryUsageListConsumePowerThreshold();
|
||||||
final Set<Integer> hideSystemComponentSet = featureProvider.getHideSystemComponentSet();
|
final Set<Integer> hideSystemComponentSet = featureProvider.getHideSystemComponentSet();
|
||||||
@@ -100,10 +102,12 @@ public class BatteryDiffData {
|
|||||||
final Iterator<BatteryDiffEntry> iterator = entries.iterator();
|
final Iterator<BatteryDiffEntry> iterator = entries.iterator();
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
final BatteryDiffEntry entry = iterator.next();
|
final BatteryDiffEntry entry = iterator.next();
|
||||||
|
final long screenOnTimeInMs = entry.mScreenOnTimeInMs;
|
||||||
final double comsumePower = entry.mConsumePower;
|
final double comsumePower = entry.mConsumePower;
|
||||||
final String packageName = entry.getPackageName();
|
final String packageName = entry.getPackageName();
|
||||||
final Integer componentId = entry.mBatteryHistEntry.mDrainType;
|
final Integer componentId = entry.mBatteryHistEntry.mDrainType;
|
||||||
if (comsumePower < consumePowerThreshold
|
if ((screenOnTimeInMs < screenOnTimeThresholdInMs
|
||||||
|
&& comsumePower < consumePowerThreshold)
|
||||||
|| ConvertUtils.FAKE_PACKAGE_NAME.equals(packageName)
|
|| ConvertUtils.FAKE_PACKAGE_NAME.equals(packageName)
|
||||||
|| hideSystemComponentSet.contains(componentId)
|
|| hideSystemComponentSet.contains(componentId)
|
||||||
|| (packageName != null && hideApplicationSet.contains(packageName))) {
|
|| (packageName != null && hideApplicationSet.contains(packageName))) {
|
||||||
|
Reference in New Issue
Block a user