我正在尝试使用keytool功能创建公钥/私钥对,以便我可以向Google Play提交Android应用。当我尝试使用我制作的密钥对应用程序进行签名时,我从jarsigner
中收到此错误jarsigner: Certificate chain not found for: SHA1withDSA.
SHA1withDSA must reference a valid KeyStore
key entry containing a private key and corresponding public key certificate chain.
当我尝试使用RSA时也一样。当我查看密钥库的密钥时,我只看到了 条目类型:PrivateKeyEntry
不是公钥和私钥。
我用来创建密钥的命令是
keytool -genkey -keystore nameofkeystore.keystore
-alias coffitivity -keypass *passwordommitted* -storepass *thepasswordommitted*
答案 0 :(得分:3)
我实际上并不是100%确定我做了什么来修复它,但这就是我所做的,现在它的工作原理
keytool -genkeypair -v -keystore my-release-key.keystore
-alias coffdroid -keyalg RSA -keysize 2048 -validity 10000
注意:区别是我使用“-genkeypair”而不是“genkey”,即使它们应该是相同的
第二:做了一个新的无符号.apk。这很可能是修正它的原因 - 所以如果你正在撞墙,那就去做吧。
然后是Jarsigner
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1
-keystore my-release-key.keystore /Users/tommynicholas/Desktop/*apkname*.apk coffdroid