Clean up unused function getHideApplicationSummary in

PowerUsageFeatureProvider.

Bug: 253395332
Bug: 254769892
Bug: 254769770
Test: make RunSettingsRoboTests
Change-Id: I6acf0cbdb7321934e85939e0acee567001107a17
This commit is contained in:
Kuan Wang
2022-10-19 17:47:19 +08:00
parent eff9effb25
commit c7afa45eac
10 changed files with 20 additions and 131 deletions

View File

@@ -131,7 +131,6 @@ public class AppBatteryPreferenceController extends BasePreferenceController
mBatteryDiffEntry, mBatteryDiffEntry,
Utils.formatPercentage( Utils.formatPercentage(
mBatteryDiffEntry.getPercentOfTotal(), /* round */ true), mBatteryDiffEntry.getPercentOfTotal(), /* round */ true),
/*isValidToShowSummary=*/ true,
/*slotInformation=*/ null); /*slotInformation=*/ null);
return true; return true;
} }

View File

@@ -133,8 +133,7 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
/** Launches battery details page for an individual battery consumer. */ /** Launches battery details page for an individual battery consumer. */
public static void startBatteryDetailPage( public static void startBatteryDetailPage(
Activity caller, InstrumentedPreferenceFragment fragment, Activity caller, InstrumentedPreferenceFragment fragment,
BatteryDiffEntry diffEntry, String usagePercent, BatteryDiffEntry diffEntry, String usagePercent, String slotInformation) {
boolean isValidToShowSummary, String slotInformation) {
final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry; final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry;
final LaunchBatteryDetailPageArgs launchArgs = new LaunchBatteryDetailPageArgs(); final LaunchBatteryDetailPageArgs launchArgs = new LaunchBatteryDetailPageArgs();
// configure the launch argument. // configure the launch argument.
@@ -145,10 +144,8 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
launchArgs.mUid = (int) histEntry.mUid; launchArgs.mUid = (int) histEntry.mUid;
launchArgs.mIconId = diffEntry.getAppIconId(); launchArgs.mIconId = diffEntry.getAppIconId();
launchArgs.mConsumedPower = (int) diffEntry.mConsumePower; launchArgs.mConsumedPower = (int) diffEntry.mConsumePower;
launchArgs.mForegroundTimeMs = launchArgs.mForegroundTimeMs = diffEntry.mForegroundUsageTimeInMs;
isValidToShowSummary ? diffEntry.mForegroundUsageTimeInMs : 0; launchArgs.mBackgroundTimeMs = diffEntry.mBackgroundUsageTimeInMs;
launchArgs.mBackgroundTimeMs =
isValidToShowSummary ? diffEntry.mBackgroundUsageTimeInMs : 0;
launchArgs.mIsUserEntry = histEntry.isUserEntry(); launchArgs.mIsUserEntry = histEntry.isUserEntry();
startBatteryDetailPage(caller, fragment, launchArgs); startBatteryDetailPage(caller, fragment, launchArgs);
} }

View File

@@ -173,9 +173,4 @@ public interface PowerUsageFeatureProvider {
* Returns package names for hidding application in the usage screen. * Returns package names for hidding application in the usage screen.
*/ */
CharSequence[] getHideApplicationEntries(Context context); CharSequence[] getHideApplicationEntries(Context context);
/**
* Returns package names for hidding summary in the usage screen.
*/
CharSequence[] getHideApplicationSummary(Context context);
} }

View File

@@ -25,7 +25,6 @@ import android.util.ArraySet;
import android.util.SparseIntArray; import android.util.SparseIntArray;
import com.android.internal.util.ArrayUtils; import com.android.internal.util.ArrayUtils;
import com.android.settings.R;
import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry; import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry;
import com.android.settingslib.fuelgauge.Estimate; import com.android.settingslib.fuelgauge.Estimate;
@@ -190,10 +189,4 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider
public CharSequence[] getHideApplicationEntries(Context context) { public CharSequence[] getHideApplicationEntries(Context context) {
return new CharSequence[0]; return new CharSequence[0];
} }
@Override
public CharSequence[] getHideApplicationSummary(Context context) {
return context.getResources().getTextArray(
R.array.allowlist_hide_summary_in_battery_usage);
}
} }

View File

@@ -49,7 +49,6 @@ import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.fuelgauge.AdvancedPowerUsageDetail; import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
import com.android.settings.fuelgauge.BatteryUtils; import com.android.settings.fuelgauge.BatteryUtils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.LifecycleObserver;
@@ -60,7 +59,6 @@ import com.android.settingslib.utils.StringUtil;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Set;
/** /**
* Controller that update the battery header view * Controller that update the battery header view
@@ -85,7 +83,6 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
private final PackageManager mPackageManager; private final PackageManager mPackageManager;
private final SettingsActivity mActivity; private final SettingsActivity mActivity;
private final InstrumentedPreferenceFragment mFragment; private final InstrumentedPreferenceFragment mFragment;
private final Set<CharSequence> mNotAllowShowSummaryPackages;
private final String mPreferenceKey; private final String mPreferenceKey;
private Context mPrefContext; private Context mPrefContext;
@@ -164,10 +161,6 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
mPackageManager = context.getPackageManager(); mPackageManager = context.getPackageManager();
mActivity = activity; mActivity = activity;
mFragment = fragment; mFragment = fragment;
mNotAllowShowSummaryPackages = Set.of(
FeatureFactory.getFactory(context)
.getPowerUsageFeatureProvider(context)
.getHideApplicationSummary(context));
} }
@Override @Override
@@ -439,15 +432,9 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
if (BatteryEntry.isSystemUid(entry.getUid())) { if (BatteryEntry.isSystemUid(entry.getUid())) {
return; return;
} }
String packageName = entry.getDefaultPackageName();
if (packageName != null
&& mNotAllowShowSummaryPackages != null
&& mNotAllowShowSummaryPackages.contains(packageName)) {
return;
}
// Only show summary when usage time is longer than one minute // Only show summary when usage time is longer than one minute
final long usageTimeMs = entry.getTimeInForegroundMs(); final long usageTimeMs = entry.getTimeInForegroundMs();
if (shouldShowSummary(entry) && usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) { if (usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) {
final CharSequence timeSequence = final CharSequence timeSequence =
StringUtil.formatElapsedTime(mContext, usageTimeMs, false, false); StringUtil.formatElapsedTime(mContext, usageTimeMs, false, false);
preference.setSummary( preference.setSummary(
@@ -470,21 +457,6 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
} }
} }
private boolean shouldShowSummary(BatteryEntry entry) {
final CharSequence[] allowlistPackages =
FeatureFactory.getFactory(mContext)
.getPowerUsageFeatureProvider(mContext)
.getHideApplicationSummary(mContext);
final String target = entry.getDefaultPackageName();
for (CharSequence packageName : allowlistPackages) {
if (TextUtils.equals(target, packageName)) {
return false;
}
}
return true;
}
private static boolean isSharedGid(int uid) { private static boolean isSharedGid(int uid) {
return UserHandle.getAppIdFromSharedAppGid(uid) > 0; return UserHandle.getAppIdFromSharedAppGid(uid) > 0;
} }

View File

@@ -119,7 +119,6 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
private final String mPreferenceKey; private final String mPreferenceKey;
private final SettingsActivity mActivity; private final SettingsActivity mActivity;
private final InstrumentedPreferenceFragment mFragment; private final InstrumentedPreferenceFragment mFragment;
private final CharSequence[] mNotAllowShowSummaryPackages;
private final MetricsFeatureProvider mMetricsFeatureProvider; private final MetricsFeatureProvider mMetricsFeatureProvider;
private final Handler mHandler = new Handler(Looper.getMainLooper()); private final Handler mHandler = new Handler(Looper.getMainLooper());
private final AnimatorListenerAdapter mHourlyChartFadeInAdapter = private final AnimatorListenerAdapter mHourlyChartFadeInAdapter =
@@ -149,10 +148,6 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
mIs24HourFormat = DateFormat.is24HourFormat(context); mIs24HourFormat = DateFormat.is24HourFormat(context);
mMetricsFeatureProvider = mMetricsFeatureProvider =
FeatureFactory.getFactory(mContext).getMetricsFeatureProvider(); FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
mNotAllowShowSummaryPackages =
FeatureFactory.getFactory(context)
.getPowerUsageFeatureProvider(context)
.getHideApplicationSummary(context);
if (lifecycle != null) { if (lifecycle != null) {
lifecycle.addObserver(this); lifecycle.addObserver(this);
} }
@@ -257,8 +252,7 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s", Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s",
diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName)); diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName));
AdvancedPowerUsageDetail.startBatteryDetailPage( AdvancedPowerUsageDetail.startBatteryDetailPage(
mActivity, mFragment, diffEntry, powerPref.getPercent(), mActivity, mFragment, diffEntry, powerPref.getPercent(), getSlotInformation());
isValidToShowSummary(packageName), getSlotInformation());
return true; return true;
} }
@@ -634,11 +628,6 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
final long foregroundUsageTimeInMs = entry.mForegroundUsageTimeInMs; final long foregroundUsageTimeInMs = entry.mForegroundUsageTimeInMs;
final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs; final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs;
final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs; final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs;
// Checks whether the package is allowed to show summary or not.
if (!isValidToShowSummary(entry.getPackageName())) {
preference.setSummary(null);
return;
}
String usageTimeSummary = null; String usageTimeSummary = null;
// Not shows summary for some system components without usage time. // Not shows summary for some system components without usage time.
if (totalUsageTimeInMs == 0) { if (totalUsageTimeInMs == 0) {
@@ -677,11 +666,6 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
return mPrefContext.getString(resourceId, timeSequence); return mPrefContext.getString(resourceId, timeSequence);
} }
@VisibleForTesting
boolean isValidToShowSummary(String packageName) {
return !DataProcessor.contains(packageName, mNotAllowShowSummaryPackages);
}
private void animateBatteryChartViewGroup() { private void animateBatteryChartViewGroup() {
if (mBatteryChartViewGroup != null && mBatteryChartViewGroup.getAlpha() == 0) { if (mBatteryChartViewGroup != null && mBatteryChartViewGroup.getAlpha() == 0) {
mBatteryChartViewGroup.animate().alpha(1f).setDuration(FADE_IN_ANIMATION_DURATION) mBatteryChartViewGroup.animate().alpha(1f).setDuration(FADE_IN_ANIMATION_DURATION)

View File

@@ -157,20 +157,6 @@ public final class DataProcessor {
processedBatteryHistoryMap); processedBatteryHistoryMap);
} }
/**
* @return Returns whether the target is in the CharSequence array.
*/
public static boolean contains(String target, CharSequence[] packageNames) {
if (target != null && packageNames != null) {
for (CharSequence packageName : packageNames) {
if (TextUtils.equals(target, packageName)) {
return true;
}
}
}
return false;
}
/** /**
* Gets the {@link BatteryUsageStats} from system service. * Gets the {@link BatteryUsageStats} from system service.
*/ */
@@ -1223,6 +1209,20 @@ public final class DataProcessor {
countOfAppBeforePurge - countOfAppAfterPurge); countOfAppBeforePurge - countOfAppAfterPurge);
} }
/**
* @return Returns whether the target is in the CharSequence array.
*/
private static boolean contains(String target, CharSequence[] packageNames) {
if (target != null && packageNames != null) {
for (CharSequence packageName : packageNames) {
if (TextUtils.equals(target, packageName)) {
return true;
}
}
}
return false;
}
private static void log(Context context, final String content, final long timestamp, private static void log(Context context, final String content, final long timestamp,
final BatteryHistEntry entry) { final BatteryHistEntry entry) {
if (DEBUG) { if (DEBUG) {

View File

@@ -83,8 +83,6 @@ public class BatteryAppListPreferenceControllerTest {
when(mContext.getApplicationContext()).thenReturn(mContext); when(mContext.getApplicationContext()).thenReturn(mContext);
when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
when(mUserManager.getProfileIdsWithDisabled(anyInt())).thenReturn(new int[]{}); when(mUserManager.getProfileIdsWithDisabled(anyInt())).thenReturn(new int[]{});
when(mFeatureFactory.powerUsageFeatureProvider.getHideApplicationSummary(mContext))
.thenReturn(new String[]{"com.android.googlequicksearchbox"});
mPreference = new PowerGaugePreference(mContext); mPreference = new PowerGaugePreference(mContext);
@@ -131,20 +129,6 @@ public class BatteryAppListPreferenceControllerTest {
assertThat(mPreference.getSummary().toString()).isEqualTo("Used for 2 min"); assertThat(mPreference.getSummary().toString()).isEqualTo("Used for 2 min");
} }
@Test
public void testSetUsageSummary_timeMoreThanOneMinute_GoogleApp_shouldNotSetScreenSummary() {
when(mBatteryEntry.getTimeInForegroundMs()).thenReturn(2 * DateUtils.MINUTE_IN_MILLIS);
when(mBatteryEntry.getDefaultPackageName())
.thenReturn("com.android.googlequicksearchbox");
doReturn(mContext.getText(R.string.battery_used_for)).when(mFragment).getText(
R.string.battery_used_for);
doReturn(mContext).when(mFragment).getContext();
mPreferenceController.setUsageSummary(mPreference, mBatteryEntry);
assertThat(mPreference.getSummary()).isNull();
}
@Test @Test
public void testSetUsageSummary_timeMoreThanOneMinute_hiddenApp_setUsedSummary() { public void testSetUsageSummary_timeMoreThanOneMinute_hiddenApp_setUsedSummary() {
when(mBatteryEntry.getTimeInForegroundMs()).thenReturn(2 * DateUtils.MINUTE_IN_MILLIS); when(mBatteryEntry.getTimeInForegroundMs()).thenReturn(2 * DateUtils.MINUTE_IN_MILLIS);

View File

@@ -114,9 +114,6 @@ public final class BatteryChartPreferenceControllerTest {
final Resources resources = spy(mContext.getResources()); final Resources resources = spy(mContext.getResources());
resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US"))); resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US")));
doReturn(resources).when(mContext).getResources(); doReturn(resources).when(mContext).getResources();
doReturn(new String[]{"com.android.googlequicksearchbox"})
.when(mFeatureFactory.powerUsageFeatureProvider)
.getHideApplicationSummary(mContext);
doReturn(new String[]{"com.android.gms.persistent"}) doReturn(new String[]{"com.android.gms.persistent"})
.when(mFeatureFactory.powerUsageFeatureProvider) .when(mFeatureFactory.powerUsageFeatureProvider)
.getHideApplicationEntries(mContext); .getHideApplicationEntries(mContext);
@@ -518,21 +515,6 @@ public final class BatteryChartPreferenceControllerTest {
assertThat(pref.getSummary()).isEqualTo("Total: 2 min\nBackground: 1 min"); assertThat(pref.getSummary()).isEqualTo("Total: 2 min\nBackground: 1 min");
} }
@Test
public void setPreferenceSummary_notAllowShownPackage_setSummayAsNull() {
final PowerGaugePreference pref = new PowerGaugePreference(mContext);
pref.setSummary(PREF_SUMMARY);
final BatteryDiffEntry batteryDiffEntry =
spy(createBatteryDiffEntry(
/*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
/*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
doReturn("com.android.googlequicksearchbox").when(batteryDiffEntry)
.getPackageName();
mBatteryChartPreferenceController.setPreferenceSummary(pref, batteryDiffEntry);
assertThat(pref.getSummary()).isNull();
}
@Test @Test
public void onExpand_expandedIsTrue_addSystemEntriesToPreferenceGroup() { public void onExpand_expandedIsTrue_addSystemEntriesToPreferenceGroup() {
doReturn(1).when(mAppListGroup).getPreferenceCount(); doReturn(1).when(mAppListGroup).getPreferenceCount();
@@ -679,18 +661,6 @@ public final class BatteryChartPreferenceControllerTest {
assertThat(mBatteryChartPreferenceController.mIsExpanded).isTrue(); assertThat(mBatteryChartPreferenceController.mIsExpanded).isTrue();
} }
@Test
public void isValidToShowSummary_returnExpectedResult() {
assertThat(mBatteryChartPreferenceController
.isValidToShowSummary("com.google.android.apps.scone"))
.isTrue();
// Verifies the item which is defined in the array list.
assertThat(mBatteryChartPreferenceController
.isValidToShowSummary("com.android.googlequicksearchbox"))
.isFalse();
}
@Test @Test
public void getTotalHours_getExpectedResult() { public void getTotalHours_getExpectedResult() {
Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = createBatteryHistoryMap(60); Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = createBatteryHistoryMap(60);

View File

@@ -30,7 +30,6 @@ import com.android.settings.fuelgauge.batteryusage.db.BatteryStateDatabase;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import org.robolectric.Shadows; import org.robolectric.Shadows;
import org.robolectric.shadows.ShadowUserManager;
public class BatteryTestUtils { public class BatteryTestUtils {
@@ -54,11 +53,7 @@ public class BatteryTestUtils {
public static void setWorkProfile(Context context) { public static void setWorkProfile(Context context) {
final UserManager userManager = context.getSystemService(UserManager.class); final UserManager userManager = context.getSystemService(UserManager.class);
Shadows.shadowOf(userManager).setManagedProfile(true); Shadows.shadowOf(userManager).setManagedProfile(true);
// Changes out of the default system user so isSystemUser() returns false. Shadows.shadowOf(userManager).setIsSystemUser(false);
final int userId = 1001;
Shadows.shadowOf(userManager)
.addUser(userId, "name", /*flags=*/ ShadowUserManager.FLAG_PRIMARY);
Shadows.shadowOf(userManager).switchUser(userId);
} }
/** Creates and sets up the in-memory {@link BatteryStateDatabase}. */ /** Creates and sets up the in-memory {@link BatteryStateDatabase}. */