Chromium Code Reviews| Index: android_webview/native/aw_metrics_service_client_impl.cc |
| diff --git a/android_webview/native/aw_metrics_service_client_impl.cc b/android_webview/native/aw_metrics_service_client_impl.cc |
| index 2b0d7448671958d4b520c478b2e922aa26f8ee20..f94e644f6dd93df7321f225073aa91150d0d9101 100644 |
| --- a/android_webview/native/aw_metrics_service_client_impl.cc |
| +++ b/android_webview/native/aw_metrics_service_client_impl.cc |
| @@ -6,6 +6,8 @@ |
| #include "android_webview/common/aw_version_info_values.h" |
| #include "android_webview/jni/AwMetricsServiceClient_jni.h" |
| +#include "android_webview/native/aw_metrics_log_uploader.h" |
| +#include "base/android/build_info.h" |
| #include "base/bind.h" |
| #include "base/files/file_util.h" |
| #include "base/guid.h" |
| @@ -18,7 +20,6 @@ |
| #include "components/metrics/metrics_pref_names.h" |
| #include "components/metrics/metrics_service.h" |
| #include "components/metrics/metrics_state_manager.h" |
| -#include "components/metrics/net/net_metrics_log_uploader.h" |
| #include "components/metrics/profiler/profiler_metrics_provider.h" |
| #include "components/metrics/ui/screen_info_metrics_provider.h" |
| #include "components/metrics/url_constants.h" |
| @@ -146,10 +147,15 @@ bool AwMetricsServiceClientImpl::IsConsentGiven() { |
| void AwMetricsServiceClientImpl::SetMetricsEnabled(bool enabled) { |
| DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| + // For now, UMA is only enabled on future versions. |
| + if (base::android::BuildInfo::GetInstance()->sdk_int() <= |
| + base::android::SDK_VERSION_NOUGAT) { |
| + return; |
| + } |
| + |
| if (is_enabled_ != enabled) { |
| if (enabled) { |
| - // TODO(paulmiller): Actually enable metrics when the server-side is ready |
| - //metrics_service_->Start(); |
| + metrics_service_->Start(); |
| } else { |
| metrics_service_->Stop(); |
| } |
| @@ -207,13 +213,15 @@ AwMetricsServiceClientImpl::CreateUploader( |
| base::StringPiece mime_type, |
| metrics::MetricsLogUploader::MetricServiceType service_type, |
| const base::Callback<void(int)>& on_upload_complete) { |
| + // server_url & mime_type are unused because WebView uses the platform logging |
|
Alexei Svitkine (slow)
2017/03/29 19:19:17
Nit: Put ||'s around param names you're referring
|
| + // mechanism instead of the normal UMA server. |
| return std::unique_ptr<::metrics::MetricsLogUploader>( |
| - new metrics::NetMetricsLogUploader(request_context_, server_url, |
| - mime_type, service_type, |
| - on_upload_complete)); |
| + new AwMetricsLogUploader(on_upload_complete)); |
| } |
| base::TimeDelta AwMetricsServiceClientImpl::GetStandardUploadInterval() { |
| + // The platform logging mechanism is responsible for upload frequency; this |
| + // just specifies how frequently to provide logs to the platform. |
| return base::TimeDelta::FromMinutes(kUploadIntervalMinutes); |
| } |