Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(689)

Unified Diff: components/data_use_measurement/core/data_use_user_data.cc

Issue 2358663004: Fix foregound vs background data use measurement (Closed)
Patch Set: remove logs Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/data_use_measurement/core/data_use_user_data.cc
diff --git a/components/data_use_measurement/core/data_use_user_data.cc b/components/data_use_measurement/core/data_use_user_data.cc
index 50578ffc36effc41417471662e2d1b84b6cdf783..574dc99fd0f78695bffe3a0f79848c75f2091b28 100644
--- a/components/data_use_measurement/core/data_use_user_data.cc
+++ b/components/data_use_measurement/core/data_use_user_data.cc
@@ -4,12 +4,29 @@
#include "components/data_use_measurement/core/data_use_user_data.h"
+#include "base/android/application_status_listener.h"
#include "net/url_request/url_fetcher.h"
namespace data_use_measurement {
-DataUseUserData::DataUseUserData(ServiceName service_name)
- : service_name_(service_name) {}
+namespace {
+
+bool IsCurrentAppStateForeground() {
+#if defined(OS_ANDROID)
+ return base::android::ApplicationStatusListener::GetState() ==
+ base::android::APPLICATION_STATE_HAS_RUNNING_ACTIVITIES;
+#else
+ // If the OS is not Android, all the requests are considered Foreground.
+ return true;
+#endif
+}
+
+} // namespace
+
+DataUseUserData::DataUseUserData(ServiceName service_name,
+ bool started_in_foreground)
+ : service_name_(service_name),
+ started_in_foreground_(started_in_foreground) {}
DataUseUserData::~DataUseUserData() {}
@@ -20,7 +37,7 @@ const void* const DataUseUserData::kUserDataKey =
// static
base::SupportsUserData::Data* DataUseUserData::Create(
ServiceName service_name) {
- return new DataUseUserData(service_name);
+ return new DataUseUserData(service_name, IsCurrentAppStateForeground());
}
// static

Powered by Google App Engine
This is Rietveld 408576698