Android开发

QtAndroid签名文件错误问题

本文主要是介绍QtAndroid签名文件错误问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

QtAndroidKeyStore密钥错误问题

  • 前言
  • 一、Keystore文件
  • 二、使用步骤
    • 1.出现问题
    • 2.造成原因
  • 总结


前言

发生在实际开发过程中,同事生成的密钥keystore,在密码正确情况下,在本人的QtCreator环境下却发生密码错误的情况


一、Keystore文件

Keystore简单的理解是密钥库,为确认应用唯一性,创建的签名文件。
Keystore密钥记录会在创建时候,记录开发者应用名称,别名,姓名,单位,组织,城市,省份,国家代码等简单信息。
Keystore是确保App在篡改和盗版下能够确保程序唯一性。(同一App不用签名无法覆盖安装)

二、使用步骤

1.出现问题

在这里插入图片描述
在这里插入图片描述

同事创建好的签名文件,发送给本人进行签名打包,在Qt版本,以及编译器相同情况发下发生密码错误情况,当时人都蒙蔽了,发生什么事情?
密码都是直接从密码文档中直接复制粘贴的,不可能错误。
但是怀疑是不是签名文件有问题,或者本身QtCreator环境问题。
在这里插入图片描述
但是自己创建的密钥却能正确输入密码,正常使用打包。

2.造成原因

但是怀疑是不是密钥不一样,使用指令
keytool -list -v -keystore android_release.keystore
在这里插入图片描述
输入原设置的密码,发现可以在keytool工具中打开密钥内容,证明密钥没有问题。
在这里插入图片描述
自己生成的密钥
在这里插入图片描述
仔细对比发现
密钥库类型不一样(同事是标准的PKCS12密钥类型,我的是JKS密钥类型)
为啥密钥类型一样,密钥文件是通过Keytool工具生成的,Keytool工具是集成在JDK中。原来是使用JDK不一样。我用的是JDK是JDK1.8版本,生成的JDK是JKS类型也就是解密的时候也是JKS类型,导致同事的PKCS12密钥文件会一直提示错误,更改到其他版本的JDK即可
在这里插入图片描述

总结

在密码正确情况下分析事情,通过比对可发现密钥的区别性,通过区别性就可以找到解决方法

这篇关于QtAndroid签名文件错误问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!