Merge "Deprecate WebView#{get,set}HttpAuthUsernamePassword"

This commit is contained in:
Nate Fischer
2016-09-26 23:14:40 +00:00
committed by Android (Google) Code Review
5 changed files with 68 additions and 35 deletions

View File

@@ -45848,7 +45848,7 @@ package android.webkit {
method public int getContentHeight();
method public android.graphics.Bitmap getFavicon();
method public android.webkit.WebView.HitTestResult getHitTestResult();
method public java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public deprecated java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public java.lang.String getOriginalUrl();
method public int getProgress();
method public deprecated float getScale();
@@ -45891,7 +45891,7 @@ package android.webkit {
method public void setDownloadListener(android.webkit.DownloadListener);
method public void setFindListener(android.webkit.WebView.FindListener);
method public deprecated void setHorizontalScrollbarOverlay(boolean);
method public void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public deprecated void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public void setInitialScale(int);
method public deprecated void setMapTrackballToArrowKeys(boolean);
method public void setNetworkAvailable(boolean);
@@ -45989,10 +45989,12 @@ package android.webkit {
method public abstract void clearFormData();
method public abstract void clearHttpAuthUsernamePassword();
method public abstract deprecated void clearUsernamePassword();
method public abstract java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public static android.webkit.WebViewDatabase getInstance(android.content.Context);
method public abstract boolean hasFormData();
method public abstract boolean hasHttpAuthUsernamePassword();
method public abstract deprecated boolean hasUsernamePassword();
method public abstract void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
}
public class WebViewFragment extends android.app.Fragment {

View File

@@ -49124,7 +49124,7 @@ package android.webkit {
method public int getContentHeight();
method public android.graphics.Bitmap getFavicon();
method public android.webkit.WebView.HitTestResult getHitTestResult();
method public java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public deprecated java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public java.lang.String getOriginalUrl();
method public int getProgress();
method public deprecated float getScale();
@@ -49168,7 +49168,7 @@ package android.webkit {
method public void setDownloadListener(android.webkit.DownloadListener);
method public void setFindListener(android.webkit.WebView.FindListener);
method public deprecated void setHorizontalScrollbarOverlay(boolean);
method public void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public deprecated void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public void setInitialScale(int);
method public deprecated void setMapTrackballToArrowKeys(boolean);
method public void setNetworkAvailable(boolean);
@@ -49297,10 +49297,12 @@ package android.webkit {
method public abstract void clearFormData();
method public abstract void clearHttpAuthUsernamePassword();
method public abstract deprecated void clearUsernamePassword();
method public abstract java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public static android.webkit.WebViewDatabase getInstance(android.content.Context);
method public abstract boolean hasFormData();
method public abstract boolean hasHttpAuthUsernamePassword();
method public abstract deprecated boolean hasUsernamePassword();
method public abstract void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
}
public final class WebViewDelegate {

View File

@@ -45936,7 +45936,7 @@ package android.webkit {
method public int getContentHeight();
method public android.graphics.Bitmap getFavicon();
method public android.webkit.WebView.HitTestResult getHitTestResult();
method public java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public deprecated java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public java.lang.String getOriginalUrl();
method public int getProgress();
method public deprecated float getScale();
@@ -45979,7 +45979,7 @@ package android.webkit {
method public void setDownloadListener(android.webkit.DownloadListener);
method public void setFindListener(android.webkit.WebView.FindListener);
method public deprecated void setHorizontalScrollbarOverlay(boolean);
method public void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public deprecated void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
method public void setInitialScale(int);
method public deprecated void setMapTrackballToArrowKeys(boolean);
method public void setNetworkAvailable(boolean);
@@ -46077,10 +46077,12 @@ package android.webkit {
method public abstract void clearFormData();
method public abstract void clearHttpAuthUsernamePassword();
method public abstract deprecated void clearUsernamePassword();
method public abstract java.lang.String[] getHttpAuthUsernamePassword(java.lang.String, java.lang.String);
method public static android.webkit.WebViewDatabase getInstance(android.content.Context);
method public abstract boolean hasFormData();
method public abstract boolean hasHttpAuthUsernamePassword();
method public abstract deprecated boolean hasUsernamePassword();
method public abstract void setHttpAuthUsernamePassword(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
}
public class WebViewFragment extends android.app.Fragment {

View File

@@ -743,33 +743,14 @@ public class WebView extends AbsoluteLayout
/**
* Stores HTTP authentication credentials for a given host and realm to the {@link WebViewDatabase}
* instance.
* <p>
* To use HTTP authentication, the embedder application has to implement
* {@link WebViewClient#onReceivedHttpAuthRequest}, and call {@link HttpAuthHandler#proceed}
* with the correct username and password.
* <p>
* The embedder app can get the username and password any way it chooses, and does not have to
* use {@link WebViewDatabase}.
* <p>
* Notes:
* <li>
* {@link WebViewDatabase} is provided only as a convenience to store and retrieve http
* authentication credentials. WebView does not read from it during HTTP authentication.
* </li>
* <li>
* WebView does not provide a special mechanism to clear HTTP authentication credentials for
* implementing client logout. The client logout mechanism should be implemented by the Web site
* designer (such as server sending a HTTP 401 for invalidating credentials).
* </li>
*
* @param host the host to which the credentials apply
* @param realm the realm to which the credentials apply
* @param username the username
* @param password the password
* @see #getHttpAuthUsernamePassword
* @see WebViewDatabase#hasHttpAuthUsernamePassword
* @see WebViewDatabase#clearHttpAuthUsernamePassword
* @deprecated Use {@link WebViewDatabase#setHttpAuthUsernamePassword} instead
*/
@Deprecated
public void setHttpAuthUsernamePassword(String host, String realm,
String username, String password) {
checkThread();
@@ -779,16 +760,14 @@ public class WebView extends AbsoluteLayout
/**
* Retrieves HTTP authentication credentials for a given host and realm from the {@link
* WebViewDatabase} instance.
*
* @param host the host to which the credentials apply
* @param realm the realm to which the credentials apply
* @return the credentials as a String array, if found. The first element
* is the username and the second element is the password. Null if
* no credentials are found.
* @see #setHttpAuthUsernamePassword
* @see WebViewDatabase#hasHttpAuthUsernamePassword
* @see WebViewDatabase#clearHttpAuthUsernamePassword
* @deprecated Use {@link WebViewDatabase#getHttpAuthUsernamePassword} instead
*/
@Deprecated
public String[] getHttpAuthUsernamePassword(String host, String realm) {
checkThread();
return mProvider.getHttpAuthUsernamePassword(host, realm);

View File

@@ -65,8 +65,8 @@ public abstract class WebViewDatabase {
* Gets whether there are any saved credentials for HTTP authentication.
*
* @return whether there are any saved credentials
* @see WebView#getHttpAuthUsernamePassword
* @see WebView#setHttpAuthUsernamePassword
* @see #getHttpAuthUsernamePassword
* @see #setHttpAuthUsernamePassword
* @see #clearHttpAuthUsernamePassword
*/
public abstract boolean hasHttpAuthUsernamePassword();
@@ -83,12 +83,60 @@ public abstract class WebViewDatabase {
* mechanism should be implemented by the Web site designer (such as server sending a HTTP 401
* for invalidating credentials).
*
* @see WebView#getHttpAuthUsernamePassword
* @see WebView#setHttpAuthUsernamePassword
* @see #getHttpAuthUsernamePassword
* @see #setHttpAuthUsernamePassword
* @see #hasHttpAuthUsernamePassword
*/
public abstract void clearHttpAuthUsernamePassword();
/**
* Stores HTTP authentication credentials for a given host and realm to the {@link WebViewDatabase}
* instance.
* <p>
* To use HTTP authentication, the embedder application has to implement
* {@link WebViewClient#onReceivedHttpAuthRequest}, and call {@link HttpAuthHandler#proceed}
* with the correct username and password.
* <p>
* The embedder app can get the username and password any way it chooses, and does not have to
* use {@link WebViewDatabase}.
* <p>
* Notes:
* <li>
* {@link WebViewDatabase} is provided only as a convenience to store and retrieve http
* authentication credentials. WebView does not read from it during HTTP authentication.
* </li>
* <li>
* WebView does not provide a special mechanism to clear HTTP authentication credentials for
* implementing client logout. The client logout mechanism should be implemented by the Web site
* designer (such as server sending a HTTP 401 for invalidating credentials).
* </li>
*
* @param host the host to which the credentials apply
* @param realm the realm to which the credentials apply
* @param username the username
* @param password the password
* @see #getHttpAuthUsernamePassword
* @see #hasHttpAuthUsernamePassword
* @see #clearHttpAuthUsernamePassword
*/
public abstract void setHttpAuthUsernamePassword(String host, String realm,
String username, String password);
/**
* Retrieves HTTP authentication credentials for a given host and realm from the {@link
* WebViewDatabase} instance.
*
* @param host the host to which the credentials apply
* @param realm the realm to which the credentials apply
* @return the credentials as a String array, if found. The first element
* is the username and the second element is the password. Null if
* no credentials are found.
* @see #setHttpAuthUsernamePassword
* @see #hasHttpAuthUsernamePassword
* @see #clearHttpAuthUsernamePassword
*/
public abstract String[] getHttpAuthUsernamePassword(String host, String realm);
/**
* Gets whether there is any saved data for web forms.
*