Merge "Reset app preferences does not trigger backup for App battery usages" into main
This commit is contained in:
@@ -52,7 +52,6 @@ import com.android.settingslib.applications.AppUtils;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.instrumentation.Instrumentable;
|
||||
import com.android.settingslib.datastore.ChangeReason;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -272,7 +271,6 @@ public class AdvancedPowerUsageDetail extends DashboardFragment
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
|
||||
notifyBackupManager();
|
||||
final int currentOptimizeMode = mBatteryOptimizeUtils.getAppOptimizationMode();
|
||||
mLogStringBuilder.append(", onPause mode = ").append(currentOptimizeMode);
|
||||
logMetricCategory(currentOptimizeMode);
|
||||
@@ -289,13 +287,6 @@ public class AdvancedPowerUsageDetail extends DashboardFragment
|
||||
Log.d(TAG, "Leave with mode: " + currentOptimizeMode);
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void notifyBackupManager() {
|
||||
if (mOptimizationMode != mBatteryOptimizeUtils.getAppOptimizationMode()) {
|
||||
BatterySettingsStorage.get(getContext()).notifyChange(ChangeReason.UPDATE);
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void initHeader() {
|
||||
final View appSnippet = mHeaderPreference.findViewById(R.id.entity_header);
|
||||
|
||||
@@ -33,6 +33,7 @@ import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.fuelgauge.BatteryOptimizeHistoricalLogEntry.Action;
|
||||
import com.android.settingslib.datastore.ChangeReason;
|
||||
import com.android.settingslib.fuelgauge.PowerAllowlistBackend;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
@@ -222,6 +223,10 @@ public class BatteryOptimizeUtils {
|
||||
return;
|
||||
}
|
||||
|
||||
// App preferences are already clear when code reach here, and there may be no
|
||||
// setAppUsageStateInternal call to notifyChange. So always trigger notifyChange here.
|
||||
BatterySettingsStorage.get(context).notifyChange(ChangeReason.DELETE);
|
||||
|
||||
allowlistBackend.refreshList();
|
||||
// Resets optimization mode for each application.
|
||||
for (ApplicationInfo info : applications) {
|
||||
@@ -351,6 +356,9 @@ public class BatteryOptimizeUtils {
|
||||
}
|
||||
BatteryOptimizeLogUtils.writeLog(
|
||||
context, action, packageNameKey, createLogEvent(appStandbyMode, allowListed));
|
||||
if (action != Action.RESET) { // reset has been notified in resetAppOptimizationMode
|
||||
BatterySettingsStorage.get(context).notifyChange(toChangeReason(action));
|
||||
}
|
||||
}
|
||||
|
||||
private static String createLogEvent(int appStandbyMode, boolean allowListed) {
|
||||
@@ -362,4 +370,8 @@ public class BatteryOptimizeUtils {
|
||||
allowListed,
|
||||
getAppOptimizationMode(appStandbyMode, allowListed));
|
||||
}
|
||||
|
||||
private static @ChangeReason int toChangeReason(Action action) {
|
||||
return action == Action.RESTORE ? ChangeReason.RESTORE : ChangeReason.UPDATE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,7 +41,6 @@ import com.android.settingslib.HelpUtils;
|
||||
import com.android.settingslib.applications.AppUtils;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.datastore.ChangeReason;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
import com.android.settingslib.widget.MainSwitchPreference;
|
||||
@@ -116,7 +115,6 @@ public class PowerBackgroundUsageDetail extends DashboardFragment
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
|
||||
notifyBackupManager();
|
||||
final int currentOptimizeMode = mBatteryOptimizeUtils.getAppOptimizationMode();
|
||||
mLogStringBuilder.append(", onPause mode = ").append(currentOptimizeMode);
|
||||
logMetricCategory(currentOptimizeMode);
|
||||
@@ -183,13 +181,6 @@ public class PowerBackgroundUsageDetail extends DashboardFragment
|
||||
onRadioButtonClicked(isEnabled ? mOptimizePreference : null);
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void notifyBackupManager() {
|
||||
if (mOptimizationMode != mBatteryOptimizeUtils.getAppOptimizationMode()) {
|
||||
BatterySettingsStorage.get(getContext()).notifyChange(ChangeReason.UPDATE);
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
int getSelectedPreference() {
|
||||
if (!mMainSwitchPreference.isChecked()) {
|
||||
|
||||
Reference in New Issue
Block a user