手动签署Android应用程序无法正常工作

时间:2011-12-17 21:03:31

标签: android google-play signing

我开发了一个Android应用程序,可以用Eclipse插件签名,但我想用jarsigner和zipalign手动签名,这样我就可以自己选择算法和密钥了。

我用这个命令创建了一个Keystore:

keytool -genkey -v -keystore keystore_name -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

我的第一个问题是我无法使用Eclipse插件进入Keystore。它说:

Keystore was tampered with, or password was incorrect

所以我继续这样的jarsigner:

jarsigner -verbose -keystore keystore_name  my_application.apk alias_name

它工作正常。 最后我运行工具拉链:

zipalign -v 4 inputfile.apk outputfile.apk

我可以毫不费力地在市场上发布我的应用。但是,当朋友下载我的应用时,他会收到错误:Package file was not signed correctly

此外,我无法手动安装我的应用程序。但是使用Eclipse插件签名的版本运行正常。

现在我遇到的一个大问题是,我无法上传新的apk文件做市场,因为它说它是用其他证书签名的。 我该怎么办?

2 个答案:

答案 0 :(得分:0)

不确定这是否会有所帮助,但之前我遇到过类似的问题。在尝试了一些事情后,我使用了像这样的jarsigner,它一直很好用:

jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -keystore %path to key store here% -signedjar %the name you want for your signed apk here% %the apk you want to sign here% your.keystore

编辑:

刚刚注意到您的问题是关于如何处理市场上的应用程序。我没有帮助。遗憾。

答案 1 :(得分:0)

验证您正在使用的keytool

which keytool

检查它是否设置为openjdk ... Android仅支持Sun / Oracle Java作为keytool。