diff options
| author | 2017-04-07 18:21:46 -0700 | |
|---|---|---|
| committer | 2017-04-07 18:46:18 -0700 | |
| commit | ec0a1f2599e6b254580a0e940f47a5653f491e3c (patch) | |
| tree | 5a6c293100ba348e5ab1606e2a5b674f352c2137 | |
| parent | 9394a8fc62817a34b85d91c0004c924166952936 (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.txt | 2 | ||||
| -rw-r--r-- | api/system-current.txt | 2 | ||||
| -rw-r--r-- | api/test-current.txt | 2 | ||||
| -rw-r--r-- | core/java/android/webkit/WebSettings.java | 30 |
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> + * <meta-data android:name="android.webkit.WebView.EnableSafeBrowsing" + * android:value="true" /> + * </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 */ |