将 Web 内容作为主要或辅助内容嵌入到应用中

借助 Android,您作为开发者可以在原生应用中充分利用 Web 的强大功能,从而获享灵活高效地展示特定类型内容的好处。

使用 WebView 嵌入内容

借助 WebView API,开发者可以使用迷你浏览器的功能在应用中显示 Web 内容。这样,您就可以在应用中以核心或辅助部分的形式提供 Web 赋能的体验,如图 1 所示。

Android 应用打开 Google Play,其中主网页视图用红色框突出显示 打开的 Android 应用,其中红色方框中显示了辅助文本。
图 1. 嵌入在应用中的 Web 内容,其中 WebView 作为主要内容(左)和辅助内容(右)。

WebView 有哪些功能?

您可以在应用中使用 WebView 执行以下操作:

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

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

  • 远程网址:它可以像普通浏览器一样从互联网提取和显示网页。
  • 本地文件:可以加载存储在应用资源中的 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 的窗口的核心功能。与浏览器不同,浏览器提供了大部分导航栏和其他用户需要的功能,可让用户更广泛地浏览网页,而 WebView 的整体体验取决于应用的设计和用途。

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

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

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

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

从何处入手?

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

其他资源

如需使用 WebView 对象或自定义标签页针对 Android 设备开发网页,请参阅以下文档: