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 应用无需任何浏览器界面即可启动全屏浏览器标签页。此功能仅适用于您拥有的网站,您可以通过设置 Digital Asset Links 来证明这一点。我们稍后会详细介绍这些功能。
当您启动可信 Web 活动时,浏览器会检查 Digital Asset Links 是否有效,这称为验证。如果验证失败,浏览器将回退为将您的网站显示为自定义标签。
安装和配置 Bubblewrap
Bubblewrap 是一组库和一个 Node.js 命令行工具 (CLI),可帮助开发者使用可信 Web 活动在 Android 应用中生成、构建和运行渐进式 Web 应用。
您可以使用以下命令安装该 CLI:
设置环境
首次运行 Bubblewrap 时,它会自动下载并安装所需的外部依赖项。我们建议您让该工具执行此操作,因为它可确保依赖项配置正确无误。请参阅 Bubblewrap 文档,了解如何使用现有的 Java 开发套件 (JDK) 或 Android 命令行工具安装。
初始化和构建项目
您可以通过运行 init 命令来初始化封装 PWA 的 Android 项目:
Bubblewrap 会读取网络清单,让开发者确认要在 Android 项目中使用的值,然后使用这些值生成项目。生成项目后,运行以下命令生成 APK:
运行
构建步骤将输出名为 app-release-signed.apk
的文件。此文件可安装在开发设备上进行测试,也可上传到 Play 商店进行发布。
Bubblewrap 提供了一个在本地设备上安装和测试应用的命令。将开发设备连接到计算机,然后运行以下命令:
或者,您也可以使用 adb 工具。
注意:**adb**
命令行工具位于 **android_sdk/platform-tools/**
中的 Android 命令行工具内。
该应用现已在设备启动器中推出。打开应用后,您会发现您的网站会以自定义标签页的形式启动,而不是以可信网站活动的形式启动,这是因为我们尚未设置数字资产关联验证,但首先...
Bubblewrap 的图形界面 (GUI) 替代方案
PWA Builder 提供 GUI 界面,使用 Bubblewrap 库为 Trusted Web Activity 项目生成提供支持。如需详细了解如何使用 PWA Builder 创建用于打开 PWA 的 Android 应用,请参阅这篇博文。
关于签名密钥的注意事项
Digital Asset Links 会考虑 APK 的签名密钥,而验证失败的一个常见原因是使用了错误的签名。(请注意,如果验证失败,您的网站将以自定义标签页的形式启动,网页顶部会显示浏览器界面。)Bubblewrap 构建应用时,将在 init
步骤中使用密钥设置创建一个 APK。不过,当您在 Google Play 中发布应用时,系统可能会为您创建另一个密钥,具体取决于您选择如何处理签名密钥。详细了解签名密钥及其与 Bubblewrap 和 Google Play 的关系。
设置素材资源关联文件
Digital Asset Links 实质上包含您网站上指向您应用的文件,以及应用中指向您网站的一些元数据。
创建 assetlinks.json
文件后,将其上传到您的网站。well-known/assetlinks.json
(相对于根目录)),以便浏览器能够正确验证您的应用。如需详细了解数字资产链接与签名密钥之间的关系,请参阅深入了解数字资产链接。
检查您的浏览器
Trusted Web Activity 将会遵循用户选择的默认浏览器。如果用户的默认浏览器支持 Trusted Web Activity,系统会启动该浏览器。如果没有,系统会选择任何已安装的浏览器(如果有)来支持 Trusted Web Activity。最后,默认行为是回退到自定义标签页模式。
这意味着,如果您要调试与 Trusted Web Activity 相关的问题,则应确保您使用的是您认为自己在使用的浏览器。您可以使用以下命令检查正在使用的浏览器:
后续步骤
如果您按照本指南操作,应该可以成功实现可信 Web 活动,并且具备足够的知识来调试验证失败时发生的情况。如果没有,请参阅更多面向 Web 开发者的 Android 概念,或针对这些文档在 GitHub 上提交问题。
接下来,建议您先为应用创建图标。完成后,您可以考虑将应用部署到 Play 商店。