0

我知道以前有人问过这个问题,但我很确定我使用的是同一个密钥库。我存储了用于签署我的应用程序的第一个版本的密钥库,然后使用它来创建第二个版本。

jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -keystore app_signing.keystore target/HNewsDroid-2.0.apk release
zipalign -v 4 target/HNewsDroid-2.0.apk target/HNewsDroid-2.0-release.apk  I 

即使我无法访问我以前使用 keytool 生成 app_signing.keystore 的 Linux 安装,我相信在签署 jar 时只有 keystore 文件需要相同(即使我的私人 ssh 密钥在我的新 Linux 上已更改安装)。

如果有帮助,我正在使用 maven android 插件来生成 jars/apks。

有人可以指出我做错了什么吗?

编辑:

我不知道为什么我签署我的应用程序的证书不起作用。最后,我更改了我的包名称并将应用程序作为新应用程序上传。

4

3 回答 3

2

keytool -list -v -keystore app_signing.keystore- 获取有关证书的信息并检查其是否正常

于 2013-01-10T09:08:59.107 回答
1

您假设只有密钥库需要相同是正确的 - 您机器上的私有 SSH 密钥无关紧要。

您可以在任意数量的不同机器上签署应用程序(假设您使用相同的密钥库)。

于 2013-01-11T14:13:43.133 回答
0

原来我用keytool错误地生成了私钥。它有两个名称,这导致了问题。我只用一个名字重新生成了证书,问题就消失了。

于 2013-05-23T03:21:44.920 回答