Unitfy saver schedule type log format and log in the background am: 62a350d18c

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16101560

Change-Id: I1a555fbba1cada703423c3f94d41f67b5b89b00d
This commit is contained in:
ykhung
2021-10-22 13:42:38 +00:00
committed by Automerger Merge Worker
2 changed files with 26 additions and 10 deletions

View File

@@ -19,6 +19,7 @@ import android.app.settings.SettingsEnums;
import android.content.ContentResolver;
import android.content.Context;
import android.database.ContentObserver;
import android.os.AsyncTask;
import android.os.Handler;
import android.os.Looper;
import android.os.PowerManager;
@@ -137,17 +138,13 @@ public class BatterySaverController extends BasePreferenceController
final int mode = Global.getInt(resolver, Global.AUTOMATIC_POWER_SAVE_MODE,
PowerManager.POWER_SAVE_MODE_TRIGGER_PERCENTAGE);
int fuelgaugeScheduleType = SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_NO_SCHEDULE;
int powerLevelTriggerPercentage = -1;
switch (mode) {
case PowerManager.POWER_SAVE_MODE_TRIGGER_PERCENTAGE:
fuelgaugeScheduleType =
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_BASED_ON_PERCENTAGE;
final int powerLevelTriggerPercentage = Global.getInt(resolver,
powerLevelTriggerPercentage = Global.getInt(resolver,
Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
mMetricsFeatureProvider.action(mContext, SettingsEnums.FUELGAUGE_BATTERY_SAVER,
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_SCHEDULE_TYPE,
fuelgaugeScheduleType),
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_PERCENTAGE_VALUE,
powerLevelTriggerPercentage));
break;
case PowerManager.POWER_SAVE_MODE_TRIGGER_DYNAMIC:
fuelgaugeScheduleType = SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_BASED_ON_ROUTINE;
@@ -157,13 +154,15 @@ public class BatterySaverController extends BasePreferenceController
}
mMetricsFeatureProvider.action(mContext, SettingsEnums.FUELGAUGE_BATTERY_SAVER,
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_SCHEDULE_TYPE,
fuelgaugeScheduleType));
fuelgaugeScheduleType),
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_PERCENTAGE_VALUE,
powerLevelTriggerPercentage));
}
@Override
public void onPowerSaveModeChanged() {
updateSummary();
logPowerSaver();
AsyncTask.execute(() -> logPowerSaver());
}
@Override

View File

@@ -88,9 +88,13 @@ public class BatterySaverControllerTest {
Settings.Global.AUTOMATIC_POWER_SAVE_MODE, -1);
mBatterySaverController.onPowerSaveModeChanged();
waitAWhile();
verify(mMetricsFeatureProvider).action(mContext, SettingsEnums.FUELGAUGE_BATTERY_SAVER,
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_SCHEDULE_TYPE,
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_NO_SCHEDULE));
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_NO_SCHEDULE),
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_PERCENTAGE_VALUE,
-1));
}
@Test
@@ -104,6 +108,8 @@ public class BatterySaverControllerTest {
Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, percentageVal);
mBatterySaverController.onPowerSaveModeChanged();
waitAWhile();
verify(mMetricsFeatureProvider).action(mContext, SettingsEnums.FUELGAUGE_BATTERY_SAVER,
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_SCHEDULE_TYPE,
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_BASED_ON_PERCENTAGE),
@@ -119,9 +125,13 @@ public class BatterySaverControllerTest {
PowerManager.POWER_SAVE_MODE_TRIGGER_DYNAMIC);
mBatterySaverController.onPowerSaveModeChanged();
waitAWhile();
verify(mMetricsFeatureProvider).action(mContext, SettingsEnums.FUELGAUGE_BATTERY_SAVER,
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_SCHEDULE_TYPE,
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_BASED_ON_ROUTINE));
SettingsEnums.BATTERY_SAVER_SCHEDULE_TYPE_BASED_ON_ROUTINE),
Pair.create(SettingsEnums.FIELD_BATTERY_SAVER_PERCENTAGE_VALUE,
-1));
}
@Test
@@ -167,4 +177,11 @@ public class BatterySaverControllerTest {
assertThat(mBatterySaverController.getSummary()).isEqualTo("Off");
}
private static void waitAWhile() {
try {
Thread.sleep(200);
} catch (Exception e) {
}
}
}