summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Selim Gurun <sgurun@google.com> 2017-04-07 18:21:46 -0700
committer Selim Gurun <sgurun@google.com> 2017-04-07 18:46:18 -0700
commitec0a1f2599e6b254580a0e940f47a5653f491e3c (patch)
tree5a6c293100ba348e5ab1606e2a5b674f352c2137
parent9394a8fc62817a34b85d91c0004c924166952936 (diff)
Add an API to enable disable safebrowsing in WebView
WebView safebrowsing can be opted in using a manifest value. However, we also need to control individual WebViews. Bug:37158813 Test: See change I71e813bccc2fab73d100384661128c7311dd396c Change-Id: I647dc304787d6406691b5cbadf1c9a4f13ac5604
-rw-r--r--api/current.txt2
-rw-r--r--api/system-current.txt2
-rw-r--r--api/test-current.txt2
-rw-r--r--core/java/android/webkit/WebSettings.java30
4 files changed, 36 insertions, 0 deletions
diff --git a/api/current.txt b/api/current.txt
index d93c268d574b..369366251842 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -48738,6 +48738,7 @@ package android.webkit {
method public abstract int getMixedContentMode();
method public abstract boolean getOffscreenPreRaster();
method public abstract deprecated android.webkit.WebSettings.PluginState getPluginState();
+ method public abstract boolean getSafeBrowsingEnabled();
method public abstract java.lang.String getSansSerifFontFamily();
method public abstract deprecated boolean getSaveFormData();
method public abstract deprecated boolean getSavePassword();
@@ -48787,6 +48788,7 @@ package android.webkit {
method public abstract void setOffscreenPreRaster(boolean);
method public abstract deprecated void setPluginState(android.webkit.WebSettings.PluginState);
method public abstract deprecated void setRenderPriority(android.webkit.WebSettings.RenderPriority);
+ method public abstract void setSafeBrowsingEnabled(boolean);
method public abstract void setSansSerifFontFamily(java.lang.String);
method public abstract deprecated void setSaveFormData(boolean);
method public abstract deprecated void setSavePassword(boolean);
diff --git a/api/system-current.txt b/api/system-current.txt
index b7400c6c53d7..b12b81c3208d 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -52372,6 +52372,7 @@ package android.webkit {
method public abstract boolean getOffscreenPreRaster();
method public abstract deprecated android.webkit.WebSettings.PluginState getPluginState();
method public abstract deprecated boolean getPluginsEnabled();
+ method public abstract boolean getSafeBrowsingEnabled();
method public abstract java.lang.String getSansSerifFontFamily();
method public abstract deprecated boolean getSaveFormData();
method public abstract deprecated boolean getSavePassword();
@@ -52427,6 +52428,7 @@ package android.webkit {
method public abstract deprecated void setPluginState(android.webkit.WebSettings.PluginState);
method public abstract deprecated void setPluginsEnabled(boolean);
method public abstract deprecated void setRenderPriority(android.webkit.WebSettings.RenderPriority);
+ method public abstract void setSafeBrowsingEnabled(boolean);
method public abstract void setSansSerifFontFamily(java.lang.String);
method public abstract deprecated void setSaveFormData(boolean);
method public abstract deprecated void setSavePassword(boolean);
diff --git a/api/test-current.txt b/api/test-current.txt
index 1024e285225d..747520137d01 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -49120,6 +49120,7 @@ package android.webkit {
method public abstract int getMixedContentMode();
method public abstract boolean getOffscreenPreRaster();
method public abstract deprecated android.webkit.WebSettings.PluginState getPluginState();
+ method public abstract boolean getSafeBrowsingEnabled();
method public abstract java.lang.String getSansSerifFontFamily();
method public abstract deprecated boolean getSaveFormData();
method public abstract deprecated boolean getSavePassword();
@@ -49169,6 +49170,7 @@ package android.webkit {
method public abstract void setOffscreenPreRaster(boolean);
method public abstract deprecated void setPluginState(android.webkit.WebSettings.PluginState);
method public abstract deprecated void setRenderPriority(android.webkit.WebSettings.RenderPriority);
+ method public abstract void setSafeBrowsingEnabled(boolean);
method public abstract void setSansSerifFontFamily(java.lang.String);
method public abstract deprecated void setSaveFormData(boolean);
method public abstract deprecated void setSavePassword(boolean);
diff --git a/core/java/android/webkit/WebSettings.java b/core/java/android/webkit/WebSettings.java
index 61920bd5cee4..3a6de9609b3c 100644
--- a/core/java/android/webkit/WebSettings.java
+++ b/core/java/android/webkit/WebSettings.java
@@ -1385,6 +1385,36 @@ public abstract class WebSettings {
*/
public abstract boolean getOffscreenPreRaster();
+
+ /**
+ * Sets whether Safe Browsing is enabled. Safe browsing allows WebView to
+ * protect against malware and phishing attacks by verifying the links.
+ *
+ * Safe browsing is disabled by default. The recommended way to enable
+ * Safe browsing is using a manifest tag to change the default value to
+ * enabled for all WebViews.
+ * <p>
+ * <pre>
+ * &lt;meta-data android:name="android.webkit.WebView.EnableSafeBrowsing"
+ * android:value="true" /&gt;
+ * </pre>
+ * </p>
+ *
+ * This API overrides the manifest tag value for this WebView.
+ *
+ * @param enabled Whether Safe browsing is enabled.
+ */
+ public abstract void setSafeBrowsingEnabled(boolean enabled);
+
+ /**
+ * Gets whether Safe browsing is enabled.
+ * See {@link #setSafeBrowsingEnabled}.
+ *
+ * @return true if Safe browsing is enabled and false otherwise.
+ */
+ public abstract boolean getSafeBrowsingEnabled();
+
+
/**
* @hide
*/