webView系列(一)----相关类介绍

WebViewDatabase

存储与管理以下几类浏览数据

  1. 表单自动填充的用户名和密码;
  2. HTTP认证的用户名和密码;
  3. 曾经输入过的文本;

WebViewClient

一个web客户端,可自定义实现。

WebChromeClient

谷歌web客户端。

WebView

Android的控件,可以在xml中使用,也可以使用动态添加的方式使用。

WebStorage

该类用于管理由...提供的JavaScript存储API WebView它管理Application Cache API,Web SQL Database API和HTML5 Web Storage API。Application Cache API提供了一种机制,用于创建和维护应用程序缓存以支持脱机Web应用程序。可以将Application Cache API的使用归因于原点WebStorage.Origin,但是不可能设置每个原点的配额。请注意,每个应用程序只能有一个应用程序缓存。Web SQL Database API提供对给定源私有的存储。与应用程序缓存类似,可以将Web SQL数据库的使用归因于原点。也可以设置每个原点的配额。

WebSettings

管理WebView的设置状态。首次创建WebView时,它会获取一组默认设置。这些默认设置将从任何getter调用返回WebSettings从中获得的对象WebView#getSettings()与WebView的生命紧密相关。如果WebView已被销毁,则任何方法调用WebSettings都会抛出IllegalStateException

WebResourceResponse

封装了一个Web资源的响应信息,包含:响应数据流,编码,MIME类型,API21后添加了响应头,状态码与状态描述。

WebResourceRequest

添加于API21,封装了一个Web资源的请求信息,包含:请求地址,请求方法,请求头,是否主框架,是否用户点击,是否重定向。

WebResourceError

添加于API23,封装了一个Web资源的错误信息,包含错误码和描述。

WebMessagePort

  • HTML5消息端口的Java表示形式。消息端口表示消息通道的一个端点。在Android webview中,没有单独的Message Channel对象。创建消息通道时,两个端口彼此纠缠并启动,然后在MessagePort阵列中返回,请参WebView#createWebMessageChannel创建消息通道。
  • 首次通过传输创建或接收消息端口时,它没有WebMessageCallback来接收Web消息。消息排队,直到设置了WebMessageCallback。
  • 当嵌入器应用程序不再使用消息端口时,应关闭该消息端口。关闭的端口无法传输或无法重新打开以发送消息。关闭可以多次调用。
  • 当端口转移到JS时,它不能再用于在Java端发送或接收消息。与HTML5规范不同,如果其中一个端口发生过,则无法传输端口:i。设置了消息回调,ii。在其上发布了一条消息。应用程序无法关闭传输端口,因为还会传输所有权。
  • 可以将信道的两个端口传送到JS,例如用于子帧之间的通信。

WebMessage

API23中添加,HTML5 PostMessage事件的Java表示形式。

WebHistoryItem

单条历史记录信息,包含url,原始url,网页标题,网页图标等信息。

WebBackForwardList

历史记录信息。使用mWebView.copyBackForwardList()可以获取详细的历史记录信息。

SslErrorHandler

表示一个处理SSL错误的请求,提供了方法操作(proceed/cancel)请求。

ServiceWorkerWebSettings

管理所有服务工作者的设置状态。这些设置与任何WebView的生命周期无关,因为服务工作者可以比WebView实例更长。设置类似WebSettings,但仅支持与Service Workers相关的设置。

ServiceWorkerController

管理WebView使用的服务工作者。

ServiceWorkerClient

网络服务客户端,提供了一个shouldInterceptRequest()方法,如果webview进行了网络请求操作,都会经过这个方法。静态资源的加载,url的加载都会经过此方法。在此方法中可以进行请求的验证,资源替换等操作。

RenderProcessGoneDetail

此类提供有关渲染过程退出原因的更具体信息。应用程序可以使用它来决定如何处理这种情况。

PermissionRequest

此类定义权限请求,并在Web内容请求访问受保护资源时使用。与权限请求相关的事件通过WebChromeClient#onPermissionRequest和传递WebChromeClient#onPermissionRequestCanceled。无论是grant()deny()必须在UI线程调用来响应请求。未来版本的WebView可能会要求在此处未定义其名称的新受保护资源,即使在较旧的Android版本上运行也是如此。为避免无意中授予对新权限的请求,您应该传递要授予的特定权限grant(),并避免编写此示例中的代码:

permissionRequest.grant(permissionRequest.getResources())  // This is wrong!!!

JsResult

用于处理底层JS发起的请求,为客户端提供一些方法指明应进行的操作,比如确认或取消。

JsPromptResult

用于处理JavaScript提示请求的公共类。WebChromeClient将接收WebChromeClient#onJsPrompt(WebView, String, String, String, JsPromptResult)带有JsPromptResult实例作为参数的调用。此参数用于将此用户对话框提示的结果返回给WebView实例。客户端可以调用cancel()取消对话框或使用用户输入确认()以确认对话框。

JavascriptInterface

API17中添加,允许将方法暴露给JavaScript的注释。从API级别android.os.Build.VERSION_CODES#JELLY_BEAN_MR1及更高级别开始,只有使用此批注明确标记的方法才可用于Javascript代码。

HttpAuthHandler

表示一个HTTP认证请求,提供了方法操作(proceed/cancel)请求。

GeolocationPermissions

用于管理WebView的JS Geolocation API

DownloadListener

文件下载监听。

DateSorter

将日期排序为以下组:今天昨天七天前一个月前大于一个月前

CookieManager

管理用于WebView的cookies。

ConsoleMessage

表示来自WebCore的JavaScript控制台消息的公共类。这可以是通过调用其中一个console日志记录函数(例如console.log('...'))或页面上的JavaScript错误来发出的。要接收这些消息的通知,请覆盖该WebChromeClientonConsoleMessage(ConsoleMessage)方法。

ClientCertRequest

API21中添加,用户接收此类的实例作为参数WebViewClient#onReceivedClientCertRequest。该请求包括用于选择客户端证书的参数,例如主机名和请求证书的端口号,可接受的密钥类型和主体。用户应调用其中一个类方法来指示如何处理客户端证书请求。应该在UI线程上调用所有方法。WebView 在内存中缓存proceedcancel响应,并使用它们来处理同一主机/端口对的未来客户端证书请求。用户可以使用清除缓存的数据WebView#clearClientCertPreferences

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值