首页 > 解决方案 > 如果我使用 jarsigner 签署 AAB,我是否需要在部署之前签署 APKS 以及生成的 APK?

问题描述

在 Azure DevOps 中,我正在解压缩 aab,修改 aab 中的一些文件(图标、资源、清单),并使用 bundletool 构建模块。我的下一步是:

  1. 使用 jarsigner 对 aab 进行签名
  2. 使用 bundletool 生成 APKS 并传递签名信息
  3. 解压/解压其中的通用 APK
  4. 使用 jarsigner 对 APK 进行签名并将其发送到测试设备

我假设我签署的次数超过了必要的次数,因为我做了 3 次(AAB、APKS 和 APK)。哪个签名是必要的?每个签名任务只需要不到 10 秒的时间,但每个任务都增加了额外的复杂性,我希望这尽可能简单以实现可重用性。

标签: androidxamarin.androidapkandroid-app-bundlebundletool

解决方案


以下是所需签名的摘要:

应用程序包 (.aab)

jarsigner在上传到 Play 商店之前需要签名(使用)。

在开发或测试期间不需要签名。

APK 集 (.apks)

不需要签名。曾经。

APK (.apk)(APK 集中的那些)

始终需要签名(除非您不打算安装这些 APK)。

Bundletool 会在传递标志时自动为它在 .apks 中生成的 APK 签名--ks,因此大多数开发人员不必自己做。

但是,您已经提到您修改了“一些文件”:如果您修改了 APK,您将需要再次对它们进行签名(理想情况下使用apksigner而不是jarsigner-- 更安全,并使 APK 更快地安装)。


推荐阅读