0

我正在编写一个 python 脚本来使用 gradlew 构建和签署我的 android 项目,网络上的每个人都在谈论你如何丢失生成的密钥,因此你可能会失去更新已发布应用程序的能力。我的问题是使用 keytool 生成的每个密钥都是唯一的吗?并且使用该密钥签名的 apk 可以轻松上传到 google play 商店,并且使用该特定密钥签名的每个应用程序都将被视为更新?

谢谢 。

4

1 回答 1

0

是的,keytool 生成的每个密钥都是唯一的。

对于密钥管理,您基本上有几个选择:

  1. 在本地生成应用签名密钥,确保其安全,并且仅在生成应用的发布版本时使用它。为您的应用程序的调试版本使用单独的密钥。

  2. 在本地生成应用签名密钥,通过 Play 注册 App Signing,向 Google 提供您的密钥。在注册过程中,系统会提示您创建另一个密钥(称为上传密钥)。您可以正常使用上传密钥对上传到 Play 管理中心的应用进行签名,但请确保将应用签名保存在具有严格 ACL 的安全位置。如果您丢失了上传密钥,您可以随时将其重置,因此不太重要。

  3. 最简单的解决方案(也是 Play 管理中心的默认解决方案)是注册App Signing by Play并让 Google 生成应用签名密钥。这样您就可以确保不会意外丢失或泄漏它,并且它会足够安全。此外,您只需处理一个密钥:上传密钥,如果丢失可以重置。

我推荐第 3 个选项(最简单、最安全),但有些人更喜欢随身携带密钥副本,因此选择了第 2 个选项。正如您似乎已经听说过的那样,第一种选择非常冒险。

于 2020-03-10T16:53:57.740 回答