java.lang.Object | |
↳ | com.tencent.smtt.sdk.WebViewClient |
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
interface | WebViewClient.RenderProcessGoneDetail |
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | ERROR_AUTHENTICATION | User authentication failed on server | |||||||||
int | ERROR_BAD_URL | Malformed URL | |||||||||
int | ERROR_CONNECT | Failed to connect to the server | |||||||||
int | ERROR_FAILED_SSL_HANDSHAKE | Failed to perform SSL handshake | |||||||||
int | ERROR_FILE | Generic file error | |||||||||
int | ERROR_FILE_NOT_FOUND | File not found | |||||||||
int | ERROR_HOST_LOOKUP | Server or proxy hostname lookup failed | |||||||||
int | ERROR_IO | Failed to read or write to the server | |||||||||
int | ERROR_PROXY_AUTHENTICATION | User authentication failed on proxy | |||||||||
int | ERROR_REDIRECT_LOOP | Too many redirects | |||||||||
int | ERROR_TIMEOUT | Connection timed out | |||||||||
int | ERROR_TOO_MANY_REQUESTS | Too many requests during this load | |||||||||
int | ERROR_UNKNOWN | Generic error | |||||||||
int | ERROR_UNSUPPORTED_AUTH_SCHEME | Unsupported authentication scheme (not basic or digest) | |||||||||
int | ERROR_UNSUPPORTED_SCHEME | Unsupported URI scheme | |||||||||
int | INTERCEPT_BY_ISP | Intercept by ISP |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
WebViewClient() |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
void |
doUpdateVisitedHistory(WebView view, String url, boolean isReload)
Notify the host application to update its visited links database.
| ||||||||||
void |
onDetectedBlankScreen(String url, int status)
Notify blank screen when detected
| ||||||||||
void |
onFormResubmission(WebView view, Message dontResend, Message resend)
As the host application if the browser should resend data as the
requested page was a result of a POST.
| ||||||||||
void |
onLoadResource(WebView view, String url)
Notify the host application that the WebView will load the resource
specified by the given url.
| ||||||||||
void |
onPageCommitVisible(WebView view, String url)
Notify the host application that WebView content left over from
previous page navigations will no longer be drawn.
| ||||||||||
void |
onPageFinished(WebView view, String url)
Notify the host application that a page has finished loading.
| ||||||||||
void |
onPageStarted(WebView view, String url, Bitmap favicon)
Notify the host application that a page has started loading.
| ||||||||||
void |
onReceivedClientCertRequest(WebView view, ClientCertRequest request)
Notify the host application to handle a SSL client certificate
request.
| ||||||||||
void |
onReceivedError(WebView view, int errorCode, String description, String failingUrl)
Report an error to the host application.
| ||||||||||
void |
onReceivedError(WebView view, WebResourceRequest request, WebResourceError error)
Report web resource loading error to the host application.
| ||||||||||
void |
onReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, String host, String realm)
Notifies the host application that the WebView received an HTTP
authentication request.
| ||||||||||
void |
onReceivedHttpError(WebView view, WebResourceRequest request, WebResourceResponse errorResponse)
Notify the host application that an HTTP error has been received from the server while loading a resource.
| ||||||||||
void |
onReceivedLoginRequest(WebView view, String realm, String account, String args)
Notify the host application that a request to automatically log in the
user has been processed.
| ||||||||||
void |
onReceivedSslError(WebView view, SslErrorHandler handler, SslError error)
Notify the host application that an SSL error occurred while loading a
resource.
| ||||||||||
boolean |
onRenderProcessGone(WebView view, WebViewClient.RenderProcessGoneDetail detail)
Notify host application that the given WebView's render process has exited.
| ||||||||||
void |
onScaleChanged(WebView view, float oldScale, float newScale)
Notify the host application that the scale applied to the WebView has
changed.
| ||||||||||
void |
onTooManyRedirects(WebView view, Message cancelMsg, Message continueMsg)
This method is deprecated.
This method is no longer called. When the WebView encounters
a redirect loop, it will cancel the load.
| ||||||||||
void |
onUnhandledKeyEvent(WebView view, KeyEvent event)
Notify the host application that a key was not handled by the WebView.
| ||||||||||
WebResourceResponse |
shouldInterceptRequest(WebView view, String url)
Notify the host application of a resource request and allow the
application to return the data.
| ||||||||||
WebResourceResponse |
shouldInterceptRequest(WebView view, WebResourceRequest request)
Notify the host application of a resource request and allow the
application to return the data.
| ||||||||||
WebResourceResponse |
shouldInterceptRequest(WebView view, WebResourceRequest request, Bundle extraInfo)
Notify the host application of a resource request and allow the
application to return the data.
| ||||||||||
boolean |
shouldOverrideKeyEvent(WebView view, KeyEvent event)
Give the host application a chance to handle the key event synchronously.
| ||||||||||
boolean |
shouldOverrideUrlLoading(WebView view, String url)
Give the host application a chance to take over the control when a new
url is about to be loaded in the current WebView.
| ||||||||||
boolean |
shouldOverrideUrlLoading(WebView view, WebResourceRequest request)
Give the host application a chance to take over the control when a new
url is about to be loaded in the current WebView.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
User authentication failed on server
Malformed URL
Failed to connect to the server
Failed to perform SSL handshake
Generic file error
File not found
Server or proxy hostname lookup failed
Failed to read or write to the server
User authentication failed on proxy
Too many redirects
Connection timed out
Too many requests during this load
Generic error
Unsupported authentication scheme (not basic or digest)
Unsupported URI scheme
Intercept by ISP
Notify the host application to update its visited links database.
view | The WebView that is initiating the callback. |
---|---|
url | The url being visited. |
isReload | True if this url is being reloaded. |
Notify blank screen when detected
url | The page url |
---|---|
status | error status |
As the host application if the browser should resend data as the requested page was a result of a POST. The default is to not resend the data.
view | The WebView that is initiating the callback. |
---|---|
dontResend | The message to send if the browser should not resend |
resend | The message to send if the browser should resend data |
Notify the host application that the WebView will load the resource specified by the given url.
view | The WebView that is initiating the callback. |
---|---|
url | The url of the resource the WebView will load. |
Notify the host application that WebView content left over from previous page navigations will no longer be drawn.
This callback can be used to determine the point at which it is safe to make a recycled
WebView visible, ensuring that no stale content is shown. It is called
at the earliest point at which it can be guaranteed that WebView#onDraw will no
longer draw any content from previous navigations. The next draw will display either the
background color
of the WebView, or some of the
contents of the newly loaded page.
This method is called when the body of the HTTP response has started loading, is reflected in the DOM, and will be visible in subsequent draws. This callback occurs early in the document loading process, and as such you should expect that linked resources (for example, CSS and images) may not be available.
This callback is only called for main frame navigations.
view | The WebView for which the navigation occurred. |
---|---|
url | The URL corresponding to the page navigation that triggered this callback. |
Notify the host application that a page has finished loading. This method is called only for main frame. When onPageFinished() is called, the rendering picture may not be updated yet.
view | The WebView that is initiating the callback. |
---|---|
url | The url of the page. |
Notify the host application that a page has started loading. This method is called once for each main frame load so a page with iframes or framesets will call onPageStarted one time for the main frame. This also means that onPageStarted will not be called when the contents of an embedded frame changes, i.e. clicking a link whose target is an iframe.
view | The WebView that is initiating the callback. |
---|---|
url | The url to be loaded. |
favicon | The favicon for this page if it already exists in the database. |
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. This method is called on the UI thread. During the callback, the connection is suspended. The default behavior is to cancel, returning no client certificate.
view | The WebView that is initiating the callback |
---|---|
request | An instance of a ClientCertRequest
|
Report an error to the host application. These errors are unrecoverable (i.e. the main resource is unavailable). The errorCode parameter corresponds to one of the ERROR_* constants.
view | The WebView that is initiating the callback. |
---|---|
errorCode | The error code corresponding to an ERROR_* value. |
description | A String describing the error. |
failingUrl | The url that failed to load. |
Report web resource loading error to the host application. These errors usually indicate inability to connect to the server. Note that unlike the deprecated version of the callback, the new version will be called for any resource (iframe, image, etc.), not just for the main page. Thus, it is recommended to perform minimum required work in this callback.
view | The WebView that is initiating the callback. |
---|---|
request | The originating request. |
error | Information about the error occurred. |
Notifies the host application that the WebView received an HTTP
authentication request. The host application can use the supplied
HttpAuthHandler
to set the WebView's response to the request.
The default behavior is to cancel the request.
view | the WebView that is initiating the callback |
---|---|
handler | the HttpAuthHandler used to set the WebView's response |
host | the host requiring authentication |
realm | the realm for which authentication is required |
Notify the host application that an HTTP error has been received from the server while loading a resource. HTTP errors have status codes >= 400. This callback will be called for any resource (iframe, image, etc), not just for the main page. Thus, it is recommended to perform minimum required work in this callback. Note that the content of the server response may not be provided within the errorResponse parameter.
view | The WebView that is initiating the callback. |
---|---|
request | The originating request. |
errorResponse | Information about the error occured. |
Notify the host application that a request to automatically log in the user has been processed.
view | The WebView requesting the login. |
---|---|
realm | The account realm used to look up accounts. |
account | An optional account. If not null, the account should be checked against accounts on the device. If it is a valid account, it should be used to log in the user. |
args | Authenticator specific arguments used to log in the user. |
Notify the host application that an SSL error occurred while loading a resource. The host application must call either handler.cancel() or handler.proceed(). Note that the decision may be retained for use in response to future SSL errors. The default behavior is to cancel the load.
view | The WebView that is initiating the callback. |
---|---|
handler | An SslErrorHandler object that will handle the user's response. |
error | The SSL error object. |
Notify host application that the given WebView's render process has exited.
Multiple WebView instances may be associated with a single render process;
onRenderProcessGone will be called for each WebView that was affected.
The application's implementation of this callback should only attempt to
clean up the specific WebView given as a parameter, and should not assume
that other WebView instances are affected.
The given WebView can't be used, and should be removed from the view hierarchy,
all references to it should be cleaned up, e.g any references in the Activity
or other classes saved using findViewById(int)
and similar calls, etc.
To cause an render process crash for test purpose, the application can
call loadUrl("chrome://crash")
on the WebView. Note that multiple WebView
instances may be affected if they share a render process, not just the
specific WebView which loaded chrome://crash.
view | The WebView which needs to be cleaned up. |
---|---|
detail | the reason why it exited. |
true
if the host application handled the situation that process has
exited, otherwise, application will crash if render process crashed,
or be killed if render process was killed by the system.
Notify the host application that the scale applied to the WebView has changed.
view | he WebView that is initiating the callback. |
---|---|
oldScale | The old scale factor |
newScale | The new scale factor |
This method is deprecated.
This method is no longer called. When the WebView encounters
a redirect loop, it will cancel the load.
Notify the host application that there have been an excessive number of HTTP redirects. As the host application if it would like to continue trying to load the resource. The default behavior is to send the cancel message.
view | The WebView that is initiating the callback. |
---|---|
cancelMsg | The message to send if the host wants to cancel |
continueMsg | The message to send if the host wants to continue |
Notify the host application that a key was not handled by the WebView. Except system keys, WebView always consumes the keys in the normal flow or if shouldOverrideKeyEvent returns true. This is called asynchronously from where the key is dispatched. It gives the host application a chance to handle the unhandled key events.
view | The WebView that is initiating the callback. |
---|---|
event | The key event. |
Notify the host application of a resource request and allow the application to return the data. If the return value is null, the WebView will continue to load the resource as usual. Otherwise, the return response and data will be used. NOTE: This method is called on a thread other than the UI thread so clients should exercise caution when accessing private data or the view system.
view | The WebView that is requesting the
resource. |
---|---|
url | The raw url of the resource. |
WebResourceResponse
containing the
response information or null if the WebView should load the
resource itself.
Notify the host application of a resource request and allow the
application to return the data. If the return value is null
, the WebView
will continue to load the resource as usual. Otherwise, the return
response and data will be used.
This callback is invoked for a variety of URL schemes (e.g., http(s):
, data:
, file:
, etc.), not only those schemes which send requests over the network.
This is not called for javascript:
URLs, blob:
URLs, or for assets accessed
via file:///android_asset/
or file:///android_res/
URLs.
In the case of redirects, this is only called for the initial resource URL, not any subsequent redirect URLs.
Note: This method is called on a thread other than the UI thread so clients should exercise caution when accessing private data or the view system.
view | The WebView that is requesting the
resource. |
---|---|
request | Object containing the details of the request. |
WebResourceResponse
containing the
response information or null
if the WebView should load the
resource itself.
Notify the host application of a resource request and allow the
application to return the data. If the return value is null
, the WebView
will continue to load the resource as usual. Otherwise, the return
response and data will be used.
This callback is invoked for a variety of URL schemes (e.g., http(s):
, data:
, file:
, etc.), not only those schemes which send requests over the network.
This is not called for javascript:
URLs, blob:
URLs, or for assets accessed
via file:///android_asset/
or file:///android_res/
URLs.
In the case of redirects, this is only called for the initial resource URL, not any subsequent redirect URLs.
Note: This method is called on a thread other than the UI thread so clients should exercise caution when accessing private data or the view system.
view | The WebView that is requesting the resource. |
---|---|
request | Object containing the details of the request. |
extraInfo | extra info |
WebResourceResponse
containing the
response information or null
if the WebView should load the
resource itself.
Give the host application a chance to handle the key event synchronously. e.g. menu shortcut key events need to be filtered this way. If return true, WebView will not handle the key event. If return false, WebView will always handle the key event, so none of the super in the view chain will see the key event. The default behavior returns false.
view | The WebView that is initiating the callback. |
---|---|
event | The key event. |
Give the host application a chance to take over the control when a new url is about to be loaded in the current WebView. If WebViewClient is not provided, by default WebView will ask Activity Manager to choose the proper handler for the url. If WebViewClient is provided, return true means the host application handles the url, while return false means the current WebView handles the url. This method is not called for requests using the POST "method".
view | The WebView that is initiating the callback. |
---|---|
url | The url to be loaded. |
Give the host application a chance to take over the control when a new
url is about to be loaded in the current WebView. If WebViewClient is not
provided, by default WebView will ask Activity Manager to choose the
proper handler for the url. If WebViewClient is provided, return true
means the host application handles the url, while return false
means the
current WebView handles the url.
Notes:
loadUrl(String)
with the request's url from inside the method and then return true
,
as this will make WebView to attempt loading a non-http url, and thus fail.view | The WebView that is initiating the callback. |
---|---|
request | Object containing the details of the request. |
true
if the host application wants to leave the current WebView
and handle the url itself, otherwise return false
.