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

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

Issue 2696193004: DataUse: Initialize byte counts using Android TrafficStats (Closed)
Patch Set: Created 3 years, 10 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/data_use_measurement/core/data_use_measurement.cc
diff --git a/components/data_use_measurement/core/data_use_measurement.cc b/components/data_use_measurement/core/data_use_measurement.cc
index 85b3f66b3bad8bb8c5f7bac1208041b5c0bd5f45..3a8030740154a3c328070d3c0ca6ada8614c6ad1 100644
--- a/components/data_use_measurement/core/data_use_measurement.cc
+++ b/components/data_use_measurement/core/data_use_measurement.cc
@@ -88,6 +88,16 @@ DataUseMeasurement::DataUseMeasurement(
{
DCHECK(ascriber_);
DCHECK(url_request_classifier_);
+
+#if defined(OS_ANDROID)
+ int64_t bytes = 0;
+ // Query Android traffic stats.
+ if (net::android::traffic_stats::GetCurrentUidRxBytes(&bytes))
+ rx_bytes_os_ = bytes;
+
+ if (net::android::traffic_stats::GetCurrentUidTxBytes(&bytes))
+ tx_bytes_os_ = bytes;
+#endif
}
DataUseMeasurement::~DataUseMeasurement(){};
@@ -312,7 +322,10 @@ void DataUseMeasurement::MaybeRecordNetworkBytesOS() {
if (net::android::traffic_stats::GetCurrentUidRxBytes(&bytes)) {
if (rx_bytes_os_ != 0) {
DCHECK_GE(bytes, rx_bytes_os_);
- UMA_HISTOGRAM_COUNTS("DataUse.BytesReceived.OS", bytes - rx_bytes_os_);
+ if (bytes > rx_bytes_os_) {
+ // Do not record samples with value 0.
+ UMA_HISTOGRAM_COUNTS("DataUse.BytesReceived.OS", bytes - rx_bytes_os_);
+ }
}
rx_bytes_os_ = bytes;
}
@@ -320,7 +333,10 @@ void DataUseMeasurement::MaybeRecordNetworkBytesOS() {
if (net::android::traffic_stats::GetCurrentUidTxBytes(&bytes)) {
if (tx_bytes_os_ != 0) {
DCHECK_GE(bytes, tx_bytes_os_);
- UMA_HISTOGRAM_COUNTS("DataUse.BytesSent.OS", bytes - tx_bytes_os_);
+ if (bytes > tx_bytes_os_) {
+ // Do not record samples with value 0.
+ UMA_HISTOGRAM_COUNTS("DataUse.BytesSent.OS", bytes - tx_bytes_os_);
+ }
}
tx_bytes_os_ = bytes;
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698