Fix b/265364507: Merge GPU and TPU into Others in battery usage system components list

Bug: 265364507
Fix: 265364507
Test: manual
Change-Id: Ia428a0854c42dacff130c2492ae11642643043b0
This commit is contained in:
Zaiyue Xue
2023-02-23 15:59:15 +08:00
parent da1f2578a0
commit cbd5223bc7
3 changed files with 18 additions and 1 deletions

View File

@@ -152,6 +152,11 @@ public interface PowerUsageFeatureProvider {
*/ */
Set<Integer> getOthersSystemComponentSet(); Set<Integer> getOthersSystemComponentSet();
/**
* Returns {@link Set} for the custom system component names which are combined into others
*/
Set<String> getOthersCustomComponentNameSet();
/** /**
* Returns {@link Set} for hiding system component ids in the usage screen * Returns {@link Set} for hiding system component ids in the usage screen
*/ */

View File

@@ -172,6 +172,11 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider
return new ArraySet<>(); return new ArraySet<>();
} }
@Override
public Set<String> getOthersCustomComponentNameSet() {
return new ArraySet<>();
}
@Override @Override
public Set<Integer> getHideSystemComponentSet() { public Set<Integer> getHideSystemComponentSet() {
return new ArraySet<>(); return new ArraySet<>();

View File

@@ -17,6 +17,7 @@
package com.android.settings.fuelgauge.batteryusage; package com.android.settings.fuelgauge.batteryusage;
import android.content.Context; import android.content.Context;
import android.os.BatteryConsumer;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
@@ -151,11 +152,17 @@ public class BatteryDiffData {
final PowerUsageFeatureProvider featureProvider, final PowerUsageFeatureProvider featureProvider,
final List<BatteryDiffEntry> systemEntries) { final List<BatteryDiffEntry> systemEntries) {
final Set<Integer> othersSystemComponentSet = featureProvider.getOthersSystemComponentSet(); final Set<Integer> othersSystemComponentSet = featureProvider.getOthersSystemComponentSet();
final Set<String> othersCustomComponentNameSet =
featureProvider.getOthersCustomComponentNameSet();
BatteryDiffEntry.OthersBatteryDiffEntry othersDiffEntry = null; BatteryDiffEntry.OthersBatteryDiffEntry othersDiffEntry = null;
final Iterator<BatteryDiffEntry> systemListIterator = systemEntries.iterator(); final Iterator<BatteryDiffEntry> systemListIterator = systemEntries.iterator();
while (systemListIterator.hasNext()) { while (systemListIterator.hasNext()) {
final BatteryDiffEntry batteryDiffEntry = systemListIterator.next(); final BatteryDiffEntry batteryDiffEntry = systemListIterator.next();
if (othersSystemComponentSet.contains(batteryDiffEntry.mBatteryHistEntry.mDrainType)) { final int componentId = batteryDiffEntry.mBatteryHistEntry.mDrainType;
if (othersSystemComponentSet.contains(componentId) || (
componentId >= BatteryConsumer.FIRST_CUSTOM_POWER_COMPONENT_ID
&& othersCustomComponentNameSet.contains(
batteryDiffEntry.getAppLabel()))) {
if (othersDiffEntry == null) { if (othersDiffEntry == null) {
othersDiffEntry = new BatteryDiffEntry.OthersBatteryDiffEntry(context); othersDiffEntry = new BatteryDiffEntry.OthersBatteryDiffEntry(context);
} }