将网页内容作为主要或辅助内容嵌入到您的应用中

Android 允许开发者在原生应用中利用 Web 的强大功能,因此您可以通过灵活高效地显示某些类型的内容来获益。

使用 WebView 嵌入内容

WebView API 让开发者能够使用迷你浏览器的功能,以便在应用中显示网页内容。这样一来,您就可以在应用中提供 Web 支持体验,作为核心或辅助组成部分,如图 1 所示。

Android app open to Google Play, with the primary web view highlighted in a red box Android app open with supporting text inside a red box.
图 1. 使用 WebView 将网页内容嵌入应用中,作为主要内容(左)和辅助内容(右)。

WebView 可以做什么?

这是您可以使用 WebView 在应用中执行的操作

嵌入 Web:WebView 作为组件集成到应用的用户界面中,很像一个按钮或文本字段。

加载内容:WebView 可以从各种来源加载网页内容

  • 远程网址:它可以像常规浏览器一样从互联网获取和显示网页。
  • 本地文件:它可以加载存储在应用资源中的 HTML、CSS 和 JavaScript 文件。
  • 动态生成的内容:应用可以动态生成 HTML 内容并将其提供给 WebView。

渲染:WebView 使用其浏览器引擎解析和渲染 HTML、CSS 和 JavaScript,并在应用界面中其指定的区域内显示结果网页。

执行 JavaScript:WebView 可以在加载的网页上下文中执行 JavaScript 代码。这允许在 WebView 内进行动态交互和更新。

原生应用交互:这正是 WebView 更强大的地方。它允许网页与应用之间进行双向通信。

  • JavaScript 到原生:在 WebView 中运行的 JavaScript 代码可以调用应用的主机 API,从而能够访问相机、GPS 或传感器等设备功能。
  • 原生到 JavaScript:应用还可以将 JavaScript 代码注入 WebView,操作网页内容,或响应网页触发的事件。

WebView 与 Chrome 等典型浏览器有何不同?

WebView 是一个高度自定义的组件,提供了 Web 窗口的核心功能。与浏览器不同,浏览器提供了许多导航栏和其他用户广泛浏览 Web 所需的功能,而 WebView 的整体体验则由您应用的设计和用途决定。

为了更好地了解 WebView 与标准浏览器的区别,请参阅以下说明

界面:WebView 用于显示网页内容,不像大多数其他常见浏览器(主页按钮、网址栏、导航、设置等)那样拥有自己的页眉或界面。

功能:许多浏览器都内置了额外的功能来增强浏览体验,例如书签、权限或历史记录。

更新:由于 Android WebView 是 Android 上的一个系统服务,更新会每月自动推送并集成到应用中。浏览器依赖于其相应的应用更新,然后由最终用户在其设备上应用更新。

从何入手?

如需了解如何在应用中使用 WebView,请参阅文章在 WebView 中构建 Web 应用

其他资源

要使用 WebView 对象或 Custom Tabs 为 Android 设备开发网页,请参阅以下文档