Trusted Web Activity 快速入门指南

Trusted Web Activity 可能有点难以设置,特别是如果你只想显示你的网站。本指南将引导你创建一个使用 Trusted Web Activity 的基本项目,涵盖所有注意事项。

通过本指南的学习,你将能够:

  • 使用 Bubblewrap 构建一个使用 Trusted Web Activity 并通过验证的应用。
  • 了解何时会使用你的签名密钥。
  • 能够确定你的 Android 应用是使用哪个签名构建的。
  • 了解如何创建基本的 数字资产链接 文件。

要遵循本指南,你需要:

  • 开发计算机上已安装 Node.js 10 或更高版本
  • 已连接并设置为开发用途的 Android 手机或模拟器(如果使用实体手机,请启用 USB 调试
  • 开发手机上支持 Trusted Web Activity 的浏览器
  • 你想要在 Trusted Web Activity 中查看的网站

Trusted Web Activity 允许你的 Android 应用启动全屏浏览器标签页,且没有任何浏览器界面。此功能仅限于你拥有的网站,你需要通过设置数字资产链接来证明所有权。稍后我们将详细讨论

启动 Trusted Web Activity 时,浏览器会检查数字资产链接是否匹配,这称为验证。如果验证失败,浏览器将回退到将你的网站显示为自定义标签页

安装和配置 Bubblewrap

Bubblewrap 是一套用于 Node.js 的库和命令行工具 (CLI),可帮助开发者使用 Trusted Web Activity 在 Android 应用内生成、构建和运行渐进式 Web 应用。

CLI 可以通过以下命令安装:

设置环境

首次运行 Bubblewrap 时,它会提供自动下载并安装所需的外部依赖项。我们建议让工具来完成此操作,因为这可以确保依赖项配置正确。请查阅 Bubblewrap 文档,了解如何使用现有的 Java Development Kit (JDK) 或 Android 命令行工具安装。

初始化并构建项目

初始化一个包含 PWA 的 Android 项目,请运行 init 命令:

Bubblewrap 将读取 Web Manifest,要求开发者确认要在 Android 项目中使用的值,并使用这些值生成项目。项目生成后,通过运行以下命令生成 APK:

运行

构建步骤将输出一个名为 app-release-signed.apk 的文件。此文件可以安装到开发设备上进行测试,或上传到 Play 商店进行发布。

Bubblewrap 提供了一个命令,用于在本地设备上安装和测试应用。将开发设备连接到计算机后,运行以下命令:

或者,也可以使用 adb 工具。

注意**adb** 命令行工具位于 Android 命令行工具内的 **android_sdk/platform-tools/** 目录中。

应用现在可在设备启动器中使用。打开应用时,你会注意到你的网站是作为自定义标签页启动的,而不是 Trusted Web Activity,这是因为我们尚未设置数字资产链接验证。但首先...

Bubblewrap 的图形用户界面 (GUI) 替代方案

PWA Builder 提供了一个 GUI 界面,它使用 Bubblewrap 库来驱动 Trusted Web Activity 项目的生成。有关如何使用 PWA Builder 创建一个可以在 Android 应用中打开你的 PWA 的更多说明,请参阅这篇博文

关于签名密钥的说明

数字资产链接会考虑 APK 的签名密钥,而验证失败的常见原因就是使用了错误的签名。(请记住,验证失败意味着你的网站将以自定义标签页的形式启动,页面顶部会带有浏览器界面。)当 Bubblewrap 构建应用时,将使用在 init 步骤中设置的密钥创建 APK。但是,当你在 Google Play 中发布应用时,可能会为你创建另一个密钥,具体取决于你选择如何处理签名密钥。详细了解签名密钥以及它们与 Bubblewrap 和 Google Play 的关系

设置资产链接文件

数字资产链接本质上包含你网站上的一个指向你应用的文件,以及你应用中的一些指向你网站的元数据。

创建 assetlinks.json 文件后,将其上传到你网站的 .well-known/assetlinks.json 路径下(相对于网站根目录),以便浏览器能够正确验证你的应用。查阅数字资产链接深入探讨,了解其与你的签名密钥之间的更多关系。

检查你的浏览器

Trusted Web Activity 将尝试遵守用户的默认浏览器选择。如果用户的默认浏览器支持 Trusted Web Activity,则将启动该浏览器。否则,如果安装的任何浏览器支持 Trusted Web Activity,则将选择该浏览器。最后,默认行为是回退到自定义标签页模式。

这意味着,如果你正在调试与 Trusted Web Activity 相关的问题,应确保你使用的是你认为正在使用的浏览器。你可以使用以下命令检查正在使用哪个浏览器:

接下来的步骤

希望遵循本指南后,你能够拥有一个可用的 Trusted Web Activity,并且拥有足够的知识来调试验证失败时的情况。如果仍然有问题,请查看更多面向 Web 开发者的 Android 概念,或针对这些文档提交 GitHub issue。

作为下一步,我建议你首先为你的应用创建一个图标。完成此操作后,你可以考虑将你的应用部署到 Play 商店。