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

Commit 29d0acb8 authored by Rupesh Bansal's avatar Rupesh Bansal
Browse files

Add support for overriding power manager flags

Users can now override the flags on USER_DEBUG and ENG builds using adb
shell setprop persist.sys.<FLAG_NAME>-override <true|false>

Bug: 349557782
Test: Manual
Change-Id: I3e7d99a874445cb431ffb0c49a3cea67e76e5952
parent 3a02a369
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package com.android.server.power.feature;

import android.os.Build;
import android.os.SystemProperties;
import android.text.TextUtils;
import android.util.Slog;

@@ -82,7 +84,7 @@ public class PowerManagerFlags {
                }
                return mEnabled;
            }
            mEnabled = mFlagFunction.get();
            mEnabled = flagOrSystemProperty(mFlagFunction, mName);
            if (DEBUG) {
                Slog.d(TAG, mName + ": mEnabled. Flag value = " + mEnabled);
            }
@@ -90,6 +92,15 @@ public class PowerManagerFlags {
            return mEnabled;
        }

        private boolean flagOrSystemProperty(Supplier<Boolean> flagFunction, String flagName) {
            boolean flagValue = flagFunction.get();
            if (Build.IS_ENG || Build.IS_USERDEBUG) {
                return SystemProperties.getBoolean("persist.sys." + flagName + "-override",
                        flagValue);
            }
            return flagValue;
        }

        @Override
        public String toString() {
            // remove com.android.server.power.feature.flags. from the beginning of the name.