我正在将新版本的 Android 应用程序推送到 Google Play 商店,我希望它触发应用程序当前用户的更新,而不是将其视为新版本。我没有最初用于签署现有应用程序的私钥,所以我正在尝试以下方法来恢复它。
我可以进入第 3 步,但我不确定 keytool -list -keystore my-signing-key.keystore 命令的 .keystore 文件名是什么,有什么想法吗?
- 首先,解压APK并解压文件/META-INF/ANDROID_.RSA(这个文件也可能是CERT.RSA,但应该只有一个.RSA文件)。
然后发出这个命令:
keytool -printcert -file ANDROID_.RSA 你会得到这样的证书指纹:
MD5: B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB SHA1: 16:59:E7:E3:0C:AA:7A:0D :F2:0D:05:20:12:A8:85:0B:32:C5:4F:68 签名算法名称:SHA1withRSA
然后再次使用 keytool 打印出签名密钥库的所有别名:
keytool -list -keystore my-signing-key.keystore
您将获得别名列表及其证书指纹:
android_key, Jan 23, 2010, PrivateKeyEntry,
Certificate fingerprint (MD5): B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB
瞧!我们现在可以确定该 apk 已使用此密钥库和别名“android_key”进行签名。