Google 致力于为黑人社区推动种族平等。查看具体举措

Webkit

在 Android 5 及更高版本上使用新式 WebView API。
最新更新时间 当前稳定版 下一候选版本 Beta 版 Alpha 版
2020 年 6 月 24 日 1.2.0 1.3.0-rc01 - -

声明依赖项

要添加 Webkit 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

    dependencies {
        implementation "androidx.webkit:webkit:1.2.0"
    }
    

如需详细了解依赖项,请参阅添加构建依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库的改进有自己的见解,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.3.0

版本 1.3.0-rc01

2020 年 6 月 24 日

发布了 androidx.webkit:webkit:1.3.0-rc01,该版本与 1.3.0-beta01 相比没有变化。版本 1.3.0-rc01 中包含这些提交内容

版本 1.3.0-beta01

2020 年 6 月 10 日

发布了 androidx.webkit:webkit:1.3.0-beta01版本 1.3.0-beta01 中包含这些提交内容

新功能

  • ForceDarkStrategy API,用于控制 WebView 加深(CSS/网页内容加深与自动加深)。
  • WebMessageListener API 提供一种简单安全的机制,用于在网页内容和 WebView 嵌入应用之间建立通信。
  • MultiProcessEnabled API,用于检查 WebView 是否以多进程模式运行。

版本 1.3.0-alpha03

2020 年 5 月 27 日

发布了 androidx.webkit:webkit:1.3.0-alpha03版本 1.3.0-alpha03 中包含这些提交内容

API 变更

  • addWebMessageListener 方法现在接收允许的源规则的 Set<String>(以前称为 List<String>)。

版本 1.3.0-alpha02

2020 年 4 月 29 日

发布了 androidx.webkit:webkit:1.3.0-alpha02版本 1.3.0-alpha02 中包含这些提交内容

新功能

  • MultiProcessEnabled API 检查 WebView 是否以多进程模式运行。

API 变更

  • 所有深色策略常量现在都以 DARK_STRATEGY 为前缀。

版本 1.3.0-alpha01

2020 年 4 月 15 日

发布了 androidx.webkit:webkit:1.3.0-alpha01版本 1.3.0-alpha01 中包含这些提交内容

新功能

  • ForceDarkStrategy API,用于控制 WebView 加深(CSS/网页内容加深与自动加深)。
  • WebMessageListener API 提供一种简单安全的机制,用于在网页内容和 WebView 嵌入应用之间建立通信。

版本 1.2.0

版本 1.2.0

2020 年 3 月 4 日

发布了 androidx.webkit:webkit:1.2.0版本 1.2.0 中包含这些提交内容

自 1.1.0 以来的重要变更

  • 添加了 ForceDark API,用于控制是否应在深色模式下呈现 WebView。

版本 1.2.0-rc01

2020 年 2 月 19 日

发布了 androidx.webkit:webkit:1.2.0-rc01,该版本与 1.2.0-beta01 相比没有变化。版本 1.2.0-rc01 中包含这些提交内容

版本 1.2.0-beta01

2020 年 2 月 5 日

发布了 androidx.webkit:webkit:1.2.0-beta01,该版本与 1.2.0-alpha01 相比没有变化。版本 1.2.0-beta01 中包含这些提交内容

版本 1.2.0-alpha01

2019 年 12 月 18 日

发布了 androidx.webkit:webkit:1.2.0-alpha01版本 1.2.0-alpha01 中包含这些提交内容

新功能

  • ForceDark API,用于控制是否应在深色模式下呈现 WebView。

版本 1.1.0

版本 1.1.0

2019 年 11 月 7 日

发布了 androidx.webkit:webkit:1.1.0版本 1.1.0 中包含这些提交内容

自 1.0.0 以来的重要变更

  • Getter API,用于补充 setWebViewClient()setWebChromeClient()
  • ProxyController API,用于为应用的 WebView 设置网络请求代理。
  • WebViewAssetLoader API,用于简化通过请求拦截从应用数据目录中加载 APK 资产、资源和文件的过程。这样可以在不停用 CORS 的情况下访问网络和本地资源。
  • TracingController API,用于收集 WebView 跟踪信息以进行调试。
  • RenderProcess API,用于管理 WebView 渲染程序服务,并检测行为不当的内容何时会导致 WebView 渲染程序无响应。
  • 更新了现有 API,以包含可为 null(@NonNull@Nullable)和线程(@UiThread@WorkerThread)注释。

版本 1.1.0-rc01

2019 年 10 月 9 日

发布了 androidx.webkit:webkit:1.1.0-rc01版本 1.1.0-rc01 中包含这些提交内容

问题修复

  • 修复了传递 null 客户端时 setWebViewRenderProcessClient() 可能会崩溃的问题。

版本 1.1.0-beta01

2019 年 9 月 5 日

发布了 androidx.webkit:webkit:1.1.0-beta01。点击此处可查看此版本中包含的提交内容。

新功能

  • WebViewAssetLoader 中新增了 InternalStoragePathHandler,用于从应用的数据目录加载文件。

API 变更

  • ProxyConfig#getProxyRules() 现在会返回 ProxyRule 实例的不可修改列表,这是一个新类,用于保存架构过滤器及其相应的代理网址。

问题修复

  • WebViewAssetLoader 无法从文件路径获知 MIME 类型时,会默认为“text/plain”MIME 类型(而不是 null)。
  • 现在 WebViewAssetLoader 在加载路径名称中含有特殊字符的文件时,不会再抛出 NullPointerException

版本 1.1.0-alpha02

2019 年 8 月 7 日

发布了 androidx.webkit:webkit:1.1.0-alpha02。点击此处可查看此版本中包含的提交内容。

新功能

  • WebViewAssetLoader 提供了 PathHandler 接口,以允许应用创建自定义路径处理功能。

API 变更

  • WebViewAssetLoader 现在是最终类,因为它将不会创建子类。
  • WebViewAssetLoader#PathHandler 实现现已公开,并且是最终实现。
  • 对 ProxyConfig 方法名称进行了细微更改。
  • ProxyController:新增了 addDirect()addDirect(String) 方法以直接连接到服务器;移除了 DIRECT 字符串。
  • 更新了现有 API,以包含可为 null(@NonNull@Nullable)和线程(@UiThread@WorkerThread)注释。

版本 1.1.0-alpha01

2019 年 5 月 7 日

发布了 androidx.webkit:webkit:1.1.0-alpha01。点击此处可查看此版本中包含的提交内容。

新功能

  • Getter API,用于补充 setWebViewClient()setWebChromeClient()
  • ProxyController API,用于为应用的 WebView 设置网络请求代理。
  • AssetLoader API,用于简化通过请求拦截来加载 APK 资产和资源的过程,从而允许在不停用 CORS 的情况下访问 Web 资源。
  • TracingController API,用于收集 WebView 跟踪信息以进行调试。
  • RenderProcess API,用于管理 WebView 渲染程序服务,并检测行为不当的内容何时会导致 WebView 渲染程序无响应。

问题修复

  • 修复了现有 API 的文档格式方面的一些小问题。