Commit be8cbe9e authored by liberato@chromium.org's avatar liberato@chromium.org Committed by Commit Bot

Initialize application state in AndroidBatteryMetrics.

AndroidBatteryMetrics required an application state change before
switching from UNKNOWN to the current state, which prevents it from
recording metrics on browser startup immediately.

This CL changes the behavior to check the application state on
startup, so that recording can begin immediately.

Change-Id: Iaec5a175ea3f367b30d1fd95414dcc5e67573315
Bug: 1113311
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2333090
Commit-Queue: Frank Liberato <liberato@chromium.org>
Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Reviewed-by: default avatarEric Seckler <eseckler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795154}
parent 8a9ff94f
...@@ -67,8 +67,11 @@ constexpr base::TimeDelta AndroidBatteryMetrics::kDrainMetricsInterval; ...@@ -67,8 +67,11 @@ constexpr base::TimeDelta AndroidBatteryMetrics::kDrainMetricsInterval;
AndroidBatteryMetrics::AndroidBatteryMetrics() AndroidBatteryMetrics::AndroidBatteryMetrics()
: app_state_listener_(base::android::ApplicationStatusListener::New( : app_state_listener_(base::android::ApplicationStatusListener::New(
base::BindRepeating(&AndroidBatteryMetrics::OnAppStateChanged, base::BindRepeating(&AndroidBatteryMetrics::OnAppStateChanged,
base::Unretained(this)))) { base::Unretained(this)))),
app_state_(base::android::ApplicationStatusListener::GetState()),
on_battery_power_(base::PowerMonitor::IsOnBatteryPower()) {
base::PowerMonitor::AddObserver(this); base::PowerMonitor::AddObserver(this);
UpdateDrainMetricsEnabled();
} }
AndroidBatteryMetrics::~AndroidBatteryMetrics() { AndroidBatteryMetrics::~AndroidBatteryMetrics() {
......
...@@ -38,9 +38,8 @@ class AndroidBatteryMetrics : public base::PowerObserver { ...@@ -38,9 +38,8 @@ class AndroidBatteryMetrics : public base::PowerObserver {
base::TimeDelta::FromSeconds(30); base::TimeDelta::FromSeconds(30);
std::unique_ptr<base::android::ApplicationStatusListener> app_state_listener_; std::unique_ptr<base::android::ApplicationStatusListener> app_state_listener_;
base::android::ApplicationState app_state_ = base::android::ApplicationState app_state_;
base::android::APPLICATION_STATE_UNKNOWN; bool on_battery_power_;
bool on_battery_power_ = false;
int last_remaining_capacity_uah_ = 0; int last_remaining_capacity_uah_ = 0;
base::RepeatingTimer drain_metrics_timer_; base::RepeatingTimer drain_metrics_timer_;
int skipped_timers_ = 0; int skipped_timers_ = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment