語言

WebViewClient.OnReceivedClientCertRequest(WebView, ClientCertRequest) 方法

定義

通知主機應用程式處理 SSL 用戶端憑證請求。

[Android.Runtime.Register("onReceivedClientCertRequest", "(Landroid/webkit/WebView;Landroid/webkit/ClientCertRequest;)V", "GetOnReceivedClientCertRequest_Landroid_webkit_WebView_Landroid_webkit_ClientCertRequest_Handler")]
public virtual void OnReceivedClientCertRequest(Android.Webkit.WebView? view, Android.Webkit.ClientCertRequest? request);
[<Android.Runtime.Register("onReceivedClientCertRequest", "(Landroid/webkit/WebView;Landroid/webkit/ClientCertRequest;)V", "GetOnReceivedClientCertRequest_Landroid_webkit_WebView_Landroid_webkit_ClientCertRequest_Handler")>]
abstract member OnReceivedClientCertRequest : Android.Webkit.WebView * Android.Webkit.ClientCertRequest -> unit
override this.OnReceivedClientCertRequest : Android.Webkit.WebView * Android.Webkit.ClientCertRequest -> unit

參數

view
WebView

啟動回撥的 WebView

request
ClientCertRequest

一個實例 ClientCertRequest

屬性

備註

通知主機應用程式處理 SSL 用戶端憑證請求。 主機應用程式負責顯示使用者介面(如有需要)並提供金鑰。 有三種回應方式: ClientCertRequest#proceed、、 ClientCertRequest#cancelClientCertRequest#ignore。 WebView 會在呼叫或時將回應儲存在記憶體中(應用程式整個ClientCertRequest#proceedClientCertRequest#cancel生命週期),且不會對同一主機與埠對再次呼叫onReceivedClientCertRequest()。 Webview 不會儲存被呼叫時 ClientCertRequest#ignore 的回應。 請注意,Chromium 網路堆疊中可能有多個層級在快取回應,因此忽略的行為只是最佳情況。

這個方法會在 UI 執行緒中被呼叫。 回撥期間,連線會被暫停。

在大多數使用情境中,應用程式應實作介面 android.security.KeyChainAliasCallback 並將其傳遞給 android.security.KeyChain#choosePrivateKeyAlias 使用者,以啟動活動,讓使用者選擇適當的別名。 鑰匙圈活動會透過實作介面中的回調方法提供別名。 接著應用程式應該建立一個非同步任務來呼叫 android.security.KeyChain#getPrivateKey 以接收金鑰。

客戶端憑證的實作範例可見於 AOSP 瀏覽器

預設行為是取消,不會回傳客戶端憑證。

Java 文件 android.webkit.WebViewClient.onReceivedClientCertRequest(android.webkit.WebView, android.webkit.ClientCertRequest)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於