【问题标题】:Do I still need to code sign our newly created aab before uploading to Google Play, if Play Store will be handling signing?如果 Play 商店将处理签名,我还需要在上传到 Google Play 之前对我们新创建的 aab 进行代码签名吗?
【发布时间】:2020-04-27 23:49:49
【问题描述】:

到目前为止,我们一直在将 aab 包上传到 Google Play,并且(尽管我们现在使用的是 Google Play 的应用签名),我们还在上传之前对 aab 包进行了代码签名,如下所示:

signingConfigs {
        debug {
            storeFile file('debug.keystore')
            storePassword 'android'
            keyAlias 'androiddebugkey'
            keyPassword 'android'
        }
        release {
            if (System.getenv()["CI"]) { // CI=true is exported by our CI
                storeFile file(System.getenv()["CI_KEYSTORE_PATH"])
                storePassword System.getenv()["CI_KEYSTORE_PASSWORD"]
                keyAlias System.getenv()["CI_KEY_ALIAS"]
                keyPassword System.getenv()["CI_KEY_PASSWORD"]
            }
        }

我们最近决定迁移到另一个 CI(github 操作),所以我们想知道我们是否仍需要对发布 aab 文件进行代码签名(从而处理随之而来的所有开销将机密上传到新 CI 等)因为我们启用了 Google Play 签名,Google 仍然会为我们处理签名

我们是否可以使用debug signingConfig 或者更好但根本不对其进行代码签名并在发布时让谷歌播放处理它?

p.s 我们将使用 fastlane 构建和部署我们的 react-native 项目。

【问题讨论】:

    标签: android google-play code-signing google-play-console


    【解决方案1】:

    您可能知道,应用签名密钥非常重要,因为它不能轻易更改,如果它被泄露,您的很多用户都会面临风险。

    既然 Google 正在对 APK 进行签名,如果您还持有应用签名密钥,则应确保将其保存在具有受限 ACL 的安全位置,并且您不再需要使用它签署任何内容.

    Google Play 应用签名 可以使用不同的密钥(称为上传密钥)对 App Bundle 进行签名。虽然不是强制性的,但建议您利用此功能,因为它可以让您保持应用签名密钥的安全,并且仅使用上传密钥对上传到 Play 管理中心的 App Bundle 进行签名。有关此密钥的更多信息:https://support.google.com/googleplay/android-developer/answer/7384423

    如果上传密钥被泄露或丢失,您只需请求 Google 创建一个新密钥,这不会影响您的用户。

    请注意,所有 App Bundle 在上传到 Play 管理中心时都需要签名(并且不能是调试证书),因此除非您构建的 Bundle 仅用于测试并且您无意上传他们要玩,你应该总是给他们签名(最好使用上传密钥)。

    希望对你有帮助,

    【讨论】:

    • 知道了,总而言之,我的选择是:A)继续使用实际的签名文件进行签名,尽管这样做没有任何好处,因为谷歌无论如何都会重新签名 B)签名使用上传密钥
    猜你喜欢
    • 1970-01-01
    • 2021-03-07
    • 2019-12-06
    • 2018-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2018-08-15
    相关资源
    最近更新 更多