Move allowed list definition in the battery usage to feature provider
Bug: 199367609 Test: make SettingsRoboTests Change-Id: I321426e6ff1b9586ee493792f1d39aed35ecc34d Signed-off-by: ykhung <ykhung@google.com>
This commit is contained in:
@@ -1536,11 +1536,6 @@
|
||||
<item>@string/enhanced_4g_lte_mode_summary_4g_calling</item>
|
||||
</string-array>
|
||||
|
||||
<!-- An allowlist which packages won't show summary in battery usage screen.
|
||||
[CHAR LIMIT=NONE] -->
|
||||
<string-array name="allowlist_hide_summary_in_battery_usage" translatable="false">
|
||||
</string-array>
|
||||
|
||||
<!-- Array of titles palette list for accessibility. -->
|
||||
<string-array name="setting_palette_data" translatable="false" >
|
||||
<item>@string/color_red</item>
|
||||
|
@@ -47,6 +47,7 @@ import com.android.settings.R;
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
@@ -440,8 +441,10 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
|
||||
}
|
||||
|
||||
private boolean shouldShowSummary(BatteryEntry entry) {
|
||||
final CharSequence[] allowlistPackages = mContext.getResources()
|
||||
.getTextArray(R.array.allowlist_hide_summary_in_battery_usage);
|
||||
final CharSequence[] allowlistPackages =
|
||||
FeatureFactory.getFactory(mContext)
|
||||
.getPowerUsageFeatureProvider(mContext)
|
||||
.getHideApplicationSummary(mContext);
|
||||
final String target = entry.getDefaultPackageName();
|
||||
|
||||
for (CharSequence packageName : allowlistPackages) {
|
||||
|
@@ -121,14 +121,16 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
|
||||
mFragment = fragment;
|
||||
mPreferenceKey = preferenceKey;
|
||||
mIs24HourFormat = DateFormat.is24HourFormat(context);
|
||||
mNotAllowShowSummaryPackages = context.getResources()
|
||||
.getTextArray(R.array.allowlist_hide_summary_in_battery_usage);
|
||||
mMetricsFeatureProvider =
|
||||
FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
|
||||
mNotAllowShowEntryPackages =
|
||||
FeatureFactory.getFactory(mContext)
|
||||
FeatureFactory.getFactory(context)
|
||||
.getPowerUsageFeatureProvider(context)
|
||||
.getHideApplicationEntries(mContext);
|
||||
.getHideApplicationEntries(context);
|
||||
mNotAllowShowSummaryPackages =
|
||||
FeatureFactory.getFactory(context)
|
||||
.getPowerUsageFeatureProvider(context)
|
||||
.getHideApplicationSummary(context);
|
||||
if (lifecycle != null) {
|
||||
lifecycle.addObserver(this);
|
||||
}
|
||||
|
@@ -163,4 +163,9 @@ public interface PowerUsageFeatureProvider {
|
||||
* Returns package names for hidding application in the usage screen.
|
||||
*/
|
||||
CharSequence[] getHideApplicationEntries(Context context);
|
||||
|
||||
/**
|
||||
* Returns package names for hidding summary in the usage screen.
|
||||
*/
|
||||
CharSequence[] getHideApplicationSummary(Context context);
|
||||
}
|
||||
|
@@ -190,4 +190,9 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider
|
||||
public CharSequence[] getHideApplicationEntries(Context context) {
|
||||
return new CharSequence[0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence[] getHideApplicationSummary(Context context) {
|
||||
return new CharSequence[0];
|
||||
}
|
||||
}
|
||||
|
@@ -67,11 +67,13 @@ public class BatteryAppListPreferenceControllerTest {
|
||||
private Context mContext;
|
||||
private PowerGaugePreference mPreference;
|
||||
private BatteryAppListPreferenceController mPreferenceController;
|
||||
private FakeFeatureFactory mFeatureFactory;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
|
||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||
mContext = spy(RuntimeEnvironment.application);
|
||||
final Resources resources = spy(mContext.getResources());
|
||||
when(mContext.getResources()).thenReturn(resources);
|
||||
@@ -79,9 +81,8 @@ public class BatteryAppListPreferenceControllerTest {
|
||||
when(mContext.getApplicationContext()).thenReturn(mContext);
|
||||
when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
|
||||
when(mUserManager.getProfileIdsWithDisabled(anyInt())).thenReturn(new int[] {});
|
||||
when(resources.getTextArray(R.array.allowlist_hide_summary_in_battery_usage))
|
||||
when(mFeatureFactory.powerUsageFeatureProvider.getHideApplicationSummary(mContext))
|
||||
.thenReturn(new String[] {"com.android.googlequicksearchbox"});
|
||||
FakeFeatureFactory.setupForTest();
|
||||
|
||||
mPreference = new PowerGaugePreference(mContext);
|
||||
|
||||
|
@@ -103,7 +103,8 @@ public final class BatteryChartPreferenceControllerTest {
|
||||
resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US")));
|
||||
doReturn(resources).when(mContext).getResources();
|
||||
doReturn(new String[] {"com.android.googlequicksearchbox"})
|
||||
.when(resources).getTextArray(R.array.allowlist_hide_summary_in_battery_usage);
|
||||
.when(mFeatureFactory.powerUsageFeatureProvider)
|
||||
.getHideApplicationSummary(mContext);
|
||||
mBatteryChartPreferenceController = createController();
|
||||
mBatteryChartPreferenceController.mPrefContext = mContext;
|
||||
mBatteryChartPreferenceController.mAppListPrefGroup = mAppListGroup;
|
||||
|
Reference in New Issue
Block a user