diff options
author | Selim Gurun <sgurun@google.com> | 2015-06-19 18:48:47 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-19 18:48:49 +0000 |
commit | 8d79e36c886a092bbc3d97b9c573e39021739886 (patch) | |
tree | e37454fdcd01561ab005643bcd5eca8d323bea11 | |
parent | 4f43dc042bf76ec6c3b340b2297dec7c4cdd9098 (diff) | |
parent | 36cf701e1ef0e24ce865734babb526ef5e4dc9b4 (diff) | |
download | frameworks_base-8d79e36c886a092bbc3d97b9c573e39021739886.zip frameworks_base-8d79e36c886a092bbc3d97b9c573e39021739886.tar.gz frameworks_base-8d79e36c886a092bbc3d97b9c573e39021739886.tar.bz2 |
Merge "Clarify handling client certificates" into mnc-dev
-rw-r--r-- | core/java/android/webkit/WebViewClient.java | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/core/java/android/webkit/WebViewClient.java b/core/java/android/webkit/WebViewClient.java index 2f5c9e2..7db88af 100644 --- a/core/java/android/webkit/WebViewClient.java +++ b/core/java/android/webkit/WebViewClient.java @@ -298,14 +298,27 @@ public class WebViewClient { * Notify the host application to handle a SSL client certificate * request. The host application is responsible for showing the UI * if desired and providing the keys. There are three ways to - * respond: proceed(), cancel() or ignore(). Webview remembers the - * response if proceed() or cancel() is called and does not - * call onReceivedClientCertRequest() again for the same host and port - * pair. Webview does not remember the response if ignore() is called. + * respond: proceed(), cancel() or ignore(). Webview stores the response + * in memory (for the life of the application) if proceed() or cancel() is + * called and does not call onReceivedClientCertRequest() again for the + * same host and port pair. Webview does not store the response if ignore() + * is called. * * This method is called on the UI thread. During the callback, the * connection is suspended. * + * For most use cases, the application program should implement the + * {@link android.security.KeyChainAliasCallback} interface and pass it to + * {@link android.security.KeyChain.choosePrivateKeyAlias} to start an + * activity for the user to choose the proper alias. The keychain activity will + * provide the alias through the callback method in the implemented interface. Next + * the application should create an async task to call + * {@link android.security.KeyChain.getPrivateKey} to receive the key. + * + * An example implementation of client certificates can be seen at + * <A href="https://android.googlesource.com/platform/packages/apps/Browser/+/android-5.1.1_r1/src/com/android/browser/Tab.java"> + * AOSP Browser</a> + * * The default behavior is to cancel, returning no client certificate. * * @param view The WebView that is initiating the callback |