我正在尝试使用GOOGLE PLAY CONSOLE发行的证书(.der格式)对我的APK进行签名。我可以将证书和带有密码的.jks容器放入一个受保护的.jks容器中,但是在编译时,我被一条消息打断,说“证书不受密码保护”。
我试图通过删除参数“ keyPassword”来编辑文件“ build.gradle”的重新配置(但是在编译时,我再次被打断,告知该参数丢失。我也尝试离开该参数空白,将其设置为“ false”,设置为“ null”,甚至设置为“ 000000”(我承认后者是绝望的.Kkk ...),在这些最后的尝试中,我告诉他们编译总是被相同的中断消息,指出“证书不受密码保护”。
我以为可能会有keyPassword的替代参数作为keyEmpty或keyIgore,它们可以使编译器理解证书实际上不受密码保护,但这不是错误。但是我在Google搜索中什么都没找到...
我认为也许可以通过使用密码创建克隆来“克隆” Google提供的证书。这样可以解决我的问题。但是我没有找到任何可以通过输入密码来克隆证书的工具(也许甚至不存在,因为实际上我会违反证书本身,对吗?)
有人经历过吗?你能帮我个忙吗?我已经尝试了所有我不知道还能做的事情...
我认为Google Play应用始终都已签名。因此,必须有一个我没有填写的简单且合乎逻辑的解决方案...
我当前的代码(无效)如下:
**release {
keyAlias "deployment"
keyPassword *null*
storeFile file (keystoreProperties ['storeFile'])
storePassword keystoreProperties ['storePassword']
}**
如果有人真的可以给我提示我要去哪里的地方!我将非常感谢...
答案 0 :(得分:0)
证书不包含私钥,因此不能用于对APK签名。
您可以阅读我前段时间写的this answer主题,该主题应阐明这些证书是什么。
您应使用与用于对上传到Play控制台的第一个APK /捆绑包进行签名的密钥库相同的密钥库对APK或应用捆绑包进行签名。
如果您丢失了该密钥库,则可以请求重置密钥。请参见official documentation中的重置丢失或被破坏的专用上传密钥。