diff options
author | paulmiller <paulmiller@chromium.org> | 2016-01-04 16:50:19 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-05 00:51:20 +0000 |
commit | 5bc628b55810289b6ebb269da47642b929eaf42d (patch) | |
tree | f05214cca24a1c5d209c0d82b234c54944188e5b /android_webview/native | |
parent | aa1c4ced03fe5890aa8cd2e330b939ee3accf02a (diff) | |
download | chromium_src-5bc628b55810289b6ebb269da47642b929eaf42d.zip chromium_src-5bc628b55810289b6ebb269da47642b929eaf42d.tar.gz chromium_src-5bc628b55810289b6ebb269da47642b929eaf42d.tar.bz2 |
WebView Metrics client implementation (Chromium part)
BUG=546754
Review URL: https://codereview.chromium.org/1474483004
Cr-Commit-Position: refs/heads/master@{#367433}
Diffstat (limited to 'android_webview/native')
-rw-r--r-- | android_webview/native/BUILD.gn | 8 | ||||
-rw-r--r-- | android_webview/native/android_webview_jni_registrar.cc | 2 | ||||
-rw-r--r-- | android_webview/native/aw_metrics_switch.cc | 23 | ||||
-rw-r--r-- | android_webview/native/aw_metrics_switch.h | 16 | ||||
-rw-r--r-- | android_webview/native/webview_native.gyp | 8 |
5 files changed, 55 insertions, 2 deletions
diff --git a/android_webview/native/BUILD.gn b/android_webview/native/BUILD.gn index cec2c0e..c4dbb20 100644 --- a/android_webview/native/BUILD.gn +++ b/android_webview/native/BUILD.gn @@ -28,7 +28,10 @@ source_set("native") { "//ui/gfx/geometry:geometry", ] - include_dirs = [ "//skia/config" ] + include_dirs = [ + "//skia/config", + "//third_party/protobuf", + ] sources = [ "android_protocol_handler.cc", @@ -65,6 +68,8 @@ source_set("native") { "aw_media_url_interceptor.h", "aw_message_port_service_impl.cc", "aw_message_port_service_impl.h", + "aw_metrics_switch.cc", + "aw_metrics_switch.h", "aw_pdf_exporter.cc", "aw_pdf_exporter.h", "aw_picture.cc", @@ -128,6 +133,7 @@ generate_jni("native_jni") { "../java/src/org/chromium/android_webview/AwFormDatabase.java", "../java/src/org/chromium/android_webview/AwHttpAuthHandler.java", "../java/src/org/chromium/android_webview/AwMessagePortService.java", + "../java/src/org/chromium/android_webview/AwMetricsServiceClient.java", "../java/src/org/chromium/android_webview/AwPdfExporter.java", "../java/src/org/chromium/android_webview/AwPicture.java", "../java/src/org/chromium/android_webview/AwQuotaManagerBridge.java", diff --git a/android_webview/native/android_webview_jni_registrar.cc b/android_webview/native/android_webview_jni_registrar.cc index a585d7e..cd353ec 100644 --- a/android_webview/native/android_webview_jni_registrar.cc +++ b/android_webview/native/android_webview_jni_registrar.cc @@ -17,6 +17,7 @@ #include "android_webview/native/aw_form_database.h" #include "android_webview/native/aw_http_auth_handler.h" #include "android_webview/native/aw_message_port_service_impl.h" +#include "android_webview/native/aw_metrics_switch.h" #include "android_webview/native/aw_pdf_exporter.h" #include "android_webview/native/aw_picture.h" #include "android_webview/native/aw_quota_manager_bridge_impl.h" @@ -50,6 +51,7 @@ static base::android::RegistrationMethod kWebViewRegisteredMethods[] = { { "AwPicture", RegisterAwPicture }, { "AwSettings", RegisterAwSettings }, { "AwHttpAuthHandler", RegisterAwHttpAuthHandler }, + { "AwMetricsServiceClient", RegisterAwMetricsServiceClient }, { "AwPdfExporter", RegisterAwPdfExporter }, { "AwPermissionRequest", RegisterAwPermissionRequest }, { "AwQuotaManagerBridge", RegisterAwQuotaManagerBridge }, diff --git a/android_webview/native/aw_metrics_switch.cc b/android_webview/native/aw_metrics_switch.cc new file mode 100644 index 0000000..44ab70a --- /dev/null +++ b/android_webview/native/aw_metrics_switch.cc @@ -0,0 +1,23 @@ +// Copyright 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "android_webview/native/aw_metrics_switch.h" + +#include "android_webview/browser/aw_metrics_service_client.h" +#include "android_webview/jni/AwMetricsServiceClient_jni.h" + +namespace android_webview { + +static void SetMetricsEnabled( + JNIEnv* env, + const base::android::JavaParamRef<jclass>& jcaller, + jboolean enabled) { + AwMetricsServiceClient::GetInstance()->SetMetricsEnabled(enabled); +} + +bool RegisterAwMetricsServiceClient(JNIEnv* env) { + return RegisterNativesImpl(env); +} + +} // namespace android_webview diff --git a/android_webview/native/aw_metrics_switch.h b/android_webview/native/aw_metrics_switch.h new file mode 100644 index 0000000..3f07a60 --- /dev/null +++ b/android_webview/native/aw_metrics_switch.h @@ -0,0 +1,16 @@ +// Copyright 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef ANDROID_WEBVIEW_NATIVE_AW_METRICS_SWITCH_ +#define ANDROID_WEBVIEW_NATIVE_AW_METRICS_SWITCH_ + +#include <jni.h> + +namespace android_webview { + +bool RegisterAwMetricsServiceClient(JNIEnv* env); + +} // namespace android_webview + +#endif // ANDROID_WEBVIEW_NATIVE_AW_METRICS_SWITCH_ diff --git a/android_webview/native/webview_native.gyp b/android_webview/native/webview_native.gyp index 97d941e..1a89e19 100644 --- a/android_webview/native/webview_native.gyp +++ b/android_webview/native/webview_native.gyp @@ -4,6 +4,7 @@ { 'variables': { 'chromium_code': 1, + 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out', }, 'targets': [ { @@ -32,6 +33,8 @@ 'include_dirs': [ '../..', '../../skia/config', + '../../third_party/protobuf/src', + '<(protoc_out_dir)', ], 'sources': [ 'android_protocol_handler.cc', @@ -67,7 +70,9 @@ 'aw_media_url_interceptor.cc', 'aw_media_url_interceptor.h', 'aw_message_port_service_impl.cc', - 'aw_messagE_port_service_impl.h', + 'aw_message_port_service_impl.h', + 'aw_metrics_switch.cc', + 'aw_metrics_switch.h', 'aw_pdf_exporter.cc', 'aw_pdf_exporter.h', 'aw_picture.cc', @@ -145,6 +150,7 @@ '../java/src/org/chromium/android_webview/AwFormDatabase.java', '../java/src/org/chromium/android_webview/AwHttpAuthHandler.java', '../java/src/org/chromium/android_webview/AwMessagePortService.java', + '../java/src/org/chromium/android_webview/AwMetricsServiceClient.java', '../java/src/org/chromium/android_webview/AwPdfExporter.java', '../java/src/org/chromium/android_webview/AwPicture.java', '../java/src/org/chromium/android_webview/AwQuotaManagerBridge.java', |