Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71755c95 authored by Makoto Onuki's avatar Makoto Onuki
Browse files

Use "except-idle" whitelist for force-app-standby

Bug: 71911050
Test: Manual test with:
- dumpsys alarm  | grep 'Whitelist appids'
- dumpsys deviceidle except-idle-whitelist +com.android.chrome
- dumpsys deviceidle except-idle-whitelist +com.google.android.dialer
- dumpsys deviceidle except-idle-whitelist reset

Change-Id: I6d5d8c350bad53a22adf247eb82a0e7f0d664c19
parent 03863ba5
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -1591,6 +1591,8 @@ public class DeviceIdleController extends SystemService
                    mPowerSaveWhitelistExceptIdleAppIdArray = buildAppIdArray(
                            mPowerSaveWhitelistAppsExceptIdle, mPowerSaveWhitelistUserApps,
                            mPowerSaveWhitelistExceptIdleAppIds);

                    passWhiteListToForceAppStandbyTrackerLocked();
                }
                return true;
            } catch (PackageManager.NameNotFoundException e) {
@@ -1608,6 +1610,8 @@ public class DeviceIdleController extends SystemService
                        mPowerSaveWhitelistAppsExceptIdle, mPowerSaveWhitelistUserApps,
                        mPowerSaveWhitelistExceptIdleAppIds);
                mPowerSaveWhitelistUserAppsExceptIdle.clear();

                passWhiteListToForceAppStandbyTrackerLocked();
            }
        }
    }
@@ -2572,7 +2576,7 @@ public class DeviceIdleController extends SystemService

    private void passWhiteListToForceAppStandbyTrackerLocked() {
        ForceAppStandbyTracker.getInstance(getContext()).setPowerSaveWhitelistAppIds(
                mPowerSaveWhitelistAllAppIdArray,
                mPowerSaveWhitelistExceptIdleAppIdArray,
                mTempWhitelistAppIdArray);
    }

+3 −0
Original line number Diff line number Diff line
@@ -98,6 +98,9 @@ public class ForceAppStandbyTracker {
    @GuardedBy("mLock")
    final SparseBooleanArray mForegroundUids = new SparseBooleanArray();

    /**
     * System except-idle + user whitelist in the device idle controller.
     */
    @GuardedBy("mLock")
    private int[] mPowerWhitelistedAllAppIds = new int[0];