diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 18e6bf3911eb7..ec4a53e656ab1 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -3102,6 +3102,7 @@ public final class Settings { MOVED_TO_GLOBAL.add(Settings.Global.SET_GLOBAL_HTTP_PROXY); MOVED_TO_GLOBAL.add(Settings.Global.DEFAULT_DNS_SERVER); MOVED_TO_GLOBAL.add(Settings.Global.PREFERRED_NETWORK_MODE); + MOVED_TO_GLOBAL.add(Settings.Global.WEBVIEW_DATA_REDUCTION_PROXY_KEY); } /** @hide */ @@ -4583,6 +4584,13 @@ public final class Settings { */ public static final String ANR_SHOW_BACKGROUND = "anr_show_background"; + /** + * (Experimental). If nonzero, WebView uses data reduction proxy to save network + * bandwidth. Otherwise, WebView does not use data reduction proxy. + * @hide + */ + public static final String WEBVIEW_DATA_REDUCTION_PROXY = "webview_data_reduction_proxy"; + /** * The {@link ComponentName} string of the service to be used as the voice recognition * service. @@ -5678,6 +5686,13 @@ public final class Settings { */ public static final String USE_GOOGLE_MAIL = "use_google_mail"; + /** + * Webview Data reduction proxy key. + * @hide + */ + public static final String WEBVIEW_DATA_REDUCTION_PROXY_KEY = + "webview_data_reduction_proxy_key"; + /** * Whether Wifi display is enabled/disabled * 0=disabled. 1=enabled. diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java index 22ee6beb6a6c5..081bfdf92d125 100644 --- a/core/java/android/webkit/WebView.java +++ b/core/java/android/webkit/WebView.java @@ -251,6 +251,15 @@ public class WebView extends AbsoluteLayout implements ViewTreeObserver.OnGlobalFocusChangeListener, ViewGroup.OnHierarchyChangeListener, ViewDebug.HierarchyHandler { + /** + * Broadcast Action: Indicates the data reduction proxy setting changed. + * Sent by the settings app when user changes the data reduction proxy value. This intent will + * always stay as a hidden API. + * @hide + */ + public static final String DATA_REDUCTION_PROXY_SETTING_CHANGED = + "android.webkit.DATA_REDUCTION_PROXY_SETTING_CHANGED"; + private static final String LOGTAG = "WebView"; // Throwing an exception for incorrect thread usage if the