From 91b7c1f2626fe0e84912968219d0604a8e04048c Mon Sep 17 00:00:00 2001 From: "Wesley.CW Wang" Date: Wed, 15 Sep 2021 23:04:51 +0800 Subject: [PATCH] Add isAllowlistedExceptIdle method to check target package is under it BYPASS_INCLUSIVE_LANGUAGE_REASON=legacy naming, not edit by this code change Bug: 199892006 Test: make SettingsLibRoboTests Change-Id: Ie609233ab820bf9079d7e4dc37eb61a4195a4a97 --- .../settingslib/fuelgauge/PowerAllowlistBackend.java | 12 ++++++++++++ .../fuelgauge/PowerAllowlistBackendTest.java | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerAllowlistBackend.java b/packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerAllowlistBackend.java index c501b3aab4d43..2e8f368345842 100644 --- a/packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerAllowlistBackend.java +++ b/packages/SettingsLib/src/com/android/settingslib/fuelgauge/PowerAllowlistBackend.java @@ -109,6 +109,18 @@ public class PowerAllowlistBackend { return false; } + /** + * Check if target package is in allow list except idle app + */ + public boolean isAllowlistedExceptIdle(String pkg) { + try { + return mDeviceIdleService.isPowerSaveWhitelistExceptIdleApp(pkg); + } catch (RemoteException e) { + Log.w(TAG, "Unable to reach IDeviceIdleController", e); + return true; + } + } + /** * * @param pkgs a list of packageName diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerAllowlistBackendTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerAllowlistBackendTest.java index 4f11fb1f782f4..6caf7624e1bcd 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerAllowlistBackendTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/fuelgauge/PowerAllowlistBackendTest.java @@ -151,4 +151,14 @@ public class PowerAllowlistBackendTest { assertThat(mPowerAllowlistBackend.isSysAllowlisted(PACKAGE_TWO)).isFalse(); assertThat(mPowerAllowlistBackend.isAllowlisted(PACKAGE_ONE)).isFalse(); } + + @Test + public void testIsPowerSaveWhitelistExceptIdleApp() throws Exception { + doReturn(true).when(mDeviceIdleService) + .isPowerSaveWhitelistExceptIdleApp(PACKAGE_ONE); + + mPowerAllowlistBackend.refreshList(); + + assertThat(mPowerAllowlistBackend.isAllowlistedExceptIdle(PACKAGE_ONE)).isTrue(); + } }