Freigeben über


WebViewClient.OnReceivedClientCertRequest(WebView, ClientCertRequest) Methode

Definition

Benachrichtigen Sie die Hostanwendung, um eine SSL-Clientzertifikatanforderung zu verarbeiten.

[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

Parameter

view
WebView

WebView, das den Rückruf initiiert

request
ClientCertRequest

Eine Instanz einer ClientCertRequest

Attribute

Hinweise

Benachrichtigen Sie die Hostanwendung, um eine SSL-Clientzertifikatanforderung zu verarbeiten. Die Hostanwendung ist dafür verantwortlich, die Benutzeroberfläche bei Bedarf anzuzeigen und die Schlüssel bereitzustellen. Es gibt drei Möglichkeiten, zu reagieren: ClientCertRequest#proceed, , ClientCertRequest#canceloder ClientCertRequest#ignore. Webview speichert die Antwort im Arbeitsspeicher (für die Lebensdauer der Anwendung), wenn ClientCertRequest#proceed oder ClientCertRequest#cancel aufgerufen wird, und ruft nicht erneut für dasselbe Host- und Portpaar auf onReceivedClientCertRequest() . Webview speichert die Antwort nicht, wenn ClientCertRequest#ignore sie aufgerufen wird. Beachten Sie, dass mehrere Ebenen im Chromium-Netzwerkstapel die Antworten zwischenspeichern, sodass das Verhalten für "Ignorieren" nur ein optimaler Fall ist.

Diese Methode wird im UI-Thread aufgerufen. Während des Rückrufs wird die Verbindung angehalten.

In den meisten Anwendungsfällen sollte das Anwendungsprogramm die android.security.KeyChainAliasCallback Schnittstelle implementieren und übergeben, um android.security.KeyChain#choosePrivateKeyAlias eine Aktivität für den Benutzer zu starten, um den richtigen Alias auszuwählen. Die Schlüsselbundaktivität stellt den Alias über die Rückrufmethode in der implementierten Schnittstelle bereit. Als Nächstes sollte die Anwendung eine asynchrone Aufgabe erstellen, um android.security.KeyChain#getPrivateKey den Schlüssel zu empfangen.

Eine Beispielimplementierung von Clientzertifikaten finden Sie im AOSP-Browser.

Das Standardverhalten besteht darin, das Abbrechen durchzuführen und kein Clientzertifikat zurückzugeben.

Java-Dokumentation für android.webkit.WebViewClient.onReceivedClientCertRequest(android.webkit.WebView, android.webkit.ClientCertRequest).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: