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

Android 允许开发者在原生应用中利用 Web 的强大功能,因此您可以受益于显示某些类型内容的灵活性和效率。

使用 WebView 嵌入内容

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

Android 应用打开后显示 Google Play,主 WebView 用红色框突出显示 Android 应用打开,其中包含支持的文字,文字位于红色框内。
图 1.应用内嵌的网页内容,其中 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 设备开发网页,请参阅以下文档: