Loading src/com/android/settings/fuelgauge/BatteryBackupHelper.java +3 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,9 @@ public final class BatteryBackupHelper implements BackupHelper { appOptModeMap.containsKey(info.uid) ? (int) appOptModeMap.get(info.uid).getResetOptimizationMode() : BatteryOptimizeUtils.getAppOptimizationMode( mode, allowlistedApps.contains(info.packageName)); mode, allowlistedApps.contains(info.packageName), /* ignoreUnknownMode= */ false); // Ignores default optimized/unknown state or system/default apps. if (optimizationMode == BatteryOptimizeUtils.MODE_OPTIMIZED || optimizationMode == BatteryOptimizeUtils.MODE_UNKNOWN Loading src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java +14 −9 Original line number Diff line number Diff line Loading @@ -100,7 +100,8 @@ public class BatteryOptimizeUtils { /** Gets the {@link OptimizationMode} based on mode and allowed list. */ @OptimizationMode public static int getAppOptimizationMode(int mode, boolean isAllowListed) { public static int getAppOptimizationMode( int mode, boolean isAllowListed, boolean ignoreUnknownMode) { if (!isAllowListed && mode == AppOpsManager.MODE_IGNORED) { return MODE_RESTRICTED; } else if (isAllowListed && mode == AppOpsManager.MODE_ALLOWED) { Loading @@ -108,13 +109,15 @@ public class BatteryOptimizeUtils { } else if (!isAllowListed && mode == AppOpsManager.MODE_ALLOWED) { return MODE_OPTIMIZED; } else { return MODE_UNKNOWN; // MODE_UNKNOWN = isAllowListed + AppOpsManager.MODE_IGNORED // Return Unrestricted mode for Unknown mode since it is in allowlist. return ignoreUnknownMode ? MODE_UNRESTRICTED : MODE_UNKNOWN; } } /** Gets the {@link OptimizationMode} for associated app. */ @OptimizationMode public int getAppOptimizationMode(boolean refreshList) { public int getAppOptimizationMode(boolean refreshList, boolean ignoreUnknownMode) { if (refreshList) { mPowerAllowListBackend.refreshList(); } Loading @@ -127,13 +130,13 @@ public class BatteryOptimizeUtils { String.format( "refresh %s state, allowlisted = %s, mode = %d", mPackageName, mAllowListed, mMode)); return getAppOptimizationMode(mMode, mAllowListed); return getAppOptimizationMode(mMode, mAllowListed, ignoreUnknownMode); } /** Gets the {@link OptimizationMode} for associated app. */ @OptimizationMode public int getAppOptimizationMode() { return getAppOptimizationMode(true); return getAppOptimizationMode(/* refreshList= */ true, /* ignoreUnknownMode= */ true); } /** Resets optimization mode for all applications. */ Loading Loading @@ -246,10 +249,11 @@ public class BatteryOptimizeUtils { @OptimizationMode final int optimizationMode = getAppOptimizationMode( mode, allowlistBackend.isAllowlisted(info.packageName, info.uid)); // Ignores default optimized/unknown state or system/default apps. mode, allowlistBackend.isAllowlisted(info.packageName, info.uid), /* ignoreUnknownMode= */ false); // Ignores default optimized state or system/default apps. if (optimizationMode == MODE_OPTIMIZED || optimizationMode == MODE_UNKNOWN || isSystemOrDefaultApp( context, allowlistBackend, info.packageName, info.uid)) { continue; Loading Loading @@ -374,7 +378,8 @@ public class BatteryOptimizeUtils { "\tStandbyMode: %s, allowListed: %s, mode: %s", appStandbyMode, allowListed, getAppOptimizationMode(appStandbyMode, allowListed)); getAppOptimizationMode( appStandbyMode, allowListed, /* ignoreUnknownMode= */ false)); } private static @DataChangeReason int toChangeReason(Action action) { Loading src/com/android/settings/fuelgauge/BatterySettingsStorage.java +3 −1 Original line number Diff line number Diff line Loading @@ -347,7 +347,9 @@ public final class BatterySettingsStorage extends ObservableBackupRestoreStorage appOptModeMap.containsKey(info.uid) ? (int) appOptModeMap.get(info.uid).getResetOptimizationMode() : BatteryOptimizeUtils.getAppOptimizationMode( mode, mAllowlistedApps.contains(info.packageName)); mode, mAllowlistedApps.contains(info.packageName), /* ignoreUnknownMode= */ false); // Ignores default optimized/unknown state or system/default apps. if (optimizationMode == BatteryOptimizeUtils.MODE_OPTIMIZED || optimizationMode == BatteryOptimizeUtils.MODE_UNKNOWN Loading src/com/android/settings/fuelgauge/batteryusage/BatteryOptimizationModeCache.java +2 −1 Original line number Diff line number Diff line Loading @@ -51,7 +51,8 @@ final class BatteryOptimizationModeCache { Pair.create( BatteryOptimizationMode.forNumber( batteryOptimizeUtils.getAppOptimizationMode( /* refreshList= */ false)), /* refreshList= */ false, /* ignoreUnknownMode= */ false)), batteryOptimizeUtils.isOptimizeModeMutable())); } final Pair<BatteryOptimizationMode, Boolean> batteryOptimizeModeInfo = Loading src/com/android/settings/spa/app/battery/BatteryOptimizationModeAppListPageProvider.kt +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ class BatteryOptimizationModeAppListModel( PowerAllowlistBackend.getInstance(context).refreshList() return recordListFlow.filterItem { val appOptimizationMode = BatteryOptimizeUtils(context, it.app.uid, it.app.packageName) .getAppOptimizationMode(/* refreshList */ false); .getAppOptimizationMode(/* refreshList */ false, /* ignoreUnknownMode */ true); when (OptimizationModeSpinnerItem.entries.getOrNull(option)) { OptimizationModeSpinnerItem.Restricted -> appOptimizationMode == BatteryOptimizeUtils.MODE_RESTRICTED Loading Loading
src/com/android/settings/fuelgauge/BatteryBackupHelper.java +3 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,9 @@ public final class BatteryBackupHelper implements BackupHelper { appOptModeMap.containsKey(info.uid) ? (int) appOptModeMap.get(info.uid).getResetOptimizationMode() : BatteryOptimizeUtils.getAppOptimizationMode( mode, allowlistedApps.contains(info.packageName)); mode, allowlistedApps.contains(info.packageName), /* ignoreUnknownMode= */ false); // Ignores default optimized/unknown state or system/default apps. if (optimizationMode == BatteryOptimizeUtils.MODE_OPTIMIZED || optimizationMode == BatteryOptimizeUtils.MODE_UNKNOWN Loading
src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java +14 −9 Original line number Diff line number Diff line Loading @@ -100,7 +100,8 @@ public class BatteryOptimizeUtils { /** Gets the {@link OptimizationMode} based on mode and allowed list. */ @OptimizationMode public static int getAppOptimizationMode(int mode, boolean isAllowListed) { public static int getAppOptimizationMode( int mode, boolean isAllowListed, boolean ignoreUnknownMode) { if (!isAllowListed && mode == AppOpsManager.MODE_IGNORED) { return MODE_RESTRICTED; } else if (isAllowListed && mode == AppOpsManager.MODE_ALLOWED) { Loading @@ -108,13 +109,15 @@ public class BatteryOptimizeUtils { } else if (!isAllowListed && mode == AppOpsManager.MODE_ALLOWED) { return MODE_OPTIMIZED; } else { return MODE_UNKNOWN; // MODE_UNKNOWN = isAllowListed + AppOpsManager.MODE_IGNORED // Return Unrestricted mode for Unknown mode since it is in allowlist. return ignoreUnknownMode ? MODE_UNRESTRICTED : MODE_UNKNOWN; } } /** Gets the {@link OptimizationMode} for associated app. */ @OptimizationMode public int getAppOptimizationMode(boolean refreshList) { public int getAppOptimizationMode(boolean refreshList, boolean ignoreUnknownMode) { if (refreshList) { mPowerAllowListBackend.refreshList(); } Loading @@ -127,13 +130,13 @@ public class BatteryOptimizeUtils { String.format( "refresh %s state, allowlisted = %s, mode = %d", mPackageName, mAllowListed, mMode)); return getAppOptimizationMode(mMode, mAllowListed); return getAppOptimizationMode(mMode, mAllowListed, ignoreUnknownMode); } /** Gets the {@link OptimizationMode} for associated app. */ @OptimizationMode public int getAppOptimizationMode() { return getAppOptimizationMode(true); return getAppOptimizationMode(/* refreshList= */ true, /* ignoreUnknownMode= */ true); } /** Resets optimization mode for all applications. */ Loading Loading @@ -246,10 +249,11 @@ public class BatteryOptimizeUtils { @OptimizationMode final int optimizationMode = getAppOptimizationMode( mode, allowlistBackend.isAllowlisted(info.packageName, info.uid)); // Ignores default optimized/unknown state or system/default apps. mode, allowlistBackend.isAllowlisted(info.packageName, info.uid), /* ignoreUnknownMode= */ false); // Ignores default optimized state or system/default apps. if (optimizationMode == MODE_OPTIMIZED || optimizationMode == MODE_UNKNOWN || isSystemOrDefaultApp( context, allowlistBackend, info.packageName, info.uid)) { continue; Loading Loading @@ -374,7 +378,8 @@ public class BatteryOptimizeUtils { "\tStandbyMode: %s, allowListed: %s, mode: %s", appStandbyMode, allowListed, getAppOptimizationMode(appStandbyMode, allowListed)); getAppOptimizationMode( appStandbyMode, allowListed, /* ignoreUnknownMode= */ false)); } private static @DataChangeReason int toChangeReason(Action action) { Loading
src/com/android/settings/fuelgauge/BatterySettingsStorage.java +3 −1 Original line number Diff line number Diff line Loading @@ -347,7 +347,9 @@ public final class BatterySettingsStorage extends ObservableBackupRestoreStorage appOptModeMap.containsKey(info.uid) ? (int) appOptModeMap.get(info.uid).getResetOptimizationMode() : BatteryOptimizeUtils.getAppOptimizationMode( mode, mAllowlistedApps.contains(info.packageName)); mode, mAllowlistedApps.contains(info.packageName), /* ignoreUnknownMode= */ false); // Ignores default optimized/unknown state or system/default apps. if (optimizationMode == BatteryOptimizeUtils.MODE_OPTIMIZED || optimizationMode == BatteryOptimizeUtils.MODE_UNKNOWN Loading
src/com/android/settings/fuelgauge/batteryusage/BatteryOptimizationModeCache.java +2 −1 Original line number Diff line number Diff line Loading @@ -51,7 +51,8 @@ final class BatteryOptimizationModeCache { Pair.create( BatteryOptimizationMode.forNumber( batteryOptimizeUtils.getAppOptimizationMode( /* refreshList= */ false)), /* refreshList= */ false, /* ignoreUnknownMode= */ false)), batteryOptimizeUtils.isOptimizeModeMutable())); } final Pair<BatteryOptimizationMode, Boolean> batteryOptimizeModeInfo = Loading
src/com/android/settings/spa/app/battery/BatteryOptimizationModeAppListPageProvider.kt +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ class BatteryOptimizationModeAppListModel( PowerAllowlistBackend.getInstance(context).refreshList() return recordListFlow.filterItem { val appOptimizationMode = BatteryOptimizeUtils(context, it.app.uid, it.app.packageName) .getAppOptimizationMode(/* refreshList */ false); .getAppOptimizationMode(/* refreshList */ false, /* ignoreUnknownMode */ true); when (OptimizationModeSpinnerItem.entries.getOrNull(option)) { OptimizationModeSpinnerItem.Restricted -> appOptimizationMode == BatteryOptimizeUtils.MODE_RESTRICTED Loading