天天看点

Android签名的一些常见操作和问题汇总

文章目录

  • ​​如何查看签名信息​​
  • ​​已有签名文件时​​
  • ​​只有apk时​​
  • ​​jarsigner对未签名的apk签名​​
  • ​​签名不对,请检查签名是否与开放平台上填写的一致​​
  • ​​使用 re-sign.jar 重新签名​​

如何查看签名信息

已有签名文件时

​​在签名文件所在文件夹打开cmd​​

输入以下命令即可查看签名信息内容

keytool -v -list -keystore MyAppKey.jks      

默认的签名文件是 ​

​debug.keystore​

​​,位置在 ​

​$HOME/.android/debug.keystore​

​​,使用上面的命令时,让你输入密码,默认的可以直接按回车,或者输入​

​android​

只有apk时

我们把 apk 放在D盘 test 文件夹下

在cmd输入以下命令即可查看签名信息里的内容

jarsigner -verify -verbose -certs D:\test\qunar.apk      

jarsigner对未签名的apk签名

上传一些应用市场时,可能需要应用签名认领,例如上传魅族市场时,应用认领说明如下:

开发者应用认领说明

Flyme应用中心应用认领,采用Android的apk安装包签名机制来完成。如果你不清楚签名是什么,请联系开发人员协助您。

在Android平台发布应用程序之前,必须经过一个签名流程。现在您的密钥就是您的身份证明,您所要做的就是使用您的密钥,将我们提供给您的一款未经过签名的apk包签名后,发送给我们。

我们要做的就是,给市场提供的一个未经签名的apk重新签名。用的签名文件就是我们要上传的apk的签名文件

重新签名要用到 jarsigner 命令,使用如下:

命令格式:

jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkIn] [alias]      

命令格式及参数意义:

-verbose -> 输出签名过程的详细信息

-keystore [keystorePath] -> 密钥的库的位置

-signedjar [apkOut] -> 签名后的输出文件名

[apkIn] -> 待签名的文件名

[alias] -> 证书别名

演示一下:

在桌面新建一个文件夹 Demo,里面放上 未签名的apk 和 签名文件

Android签名的一些常见操作和问题汇总

​​​在当前文件夹中执行 cmd​​

由于 cmd 命令是在当前文件夹中执行的,所以签名文件路径不用写,直接写签名文件名称

待签名 和 签名后输出文件名 都在当前路径,所以直接写名字

我的签名文件的别名是 Yi

jarsigner -verbose -keystore MyAppKey.jks -signedjar test-signed.apk test-unsigned.apk Yi      

按回车键后,提示输入密码短语,输入是看不见的,输完按回车即可

Android签名的一些常见操作和问题汇总

结束后,Demo 文件中多了签好名的apk了

Android签名的一些常见操作和问题汇总

签名不对,请检查签名是否与开放平台上填写的一致

查看我的另一篇文章:​​传送门​​

使用 re-sign.jar 重新签名

re-sign.jar 工具可以将一个 apk 文件重签名,使用的是 android 自带的 debug 签名。可以通过re-sign.jar 工具,获得app的 packageName 和 main activity。用于自动化测试

下载地址

​​下载re-sign.jar​​ 提取码:esmq

使用

1、运行报ANDROID_HOME错误

当打开re-sign.jar时弹出以下提示时

Android签名的一些常见操作和问题汇总

解决办法

新建环境变量​

​ANDROID_HOME​

​​,指向sdk安装路径

Android签名的一些常见操作和问题汇总

然后编辑path,新增ANDROID_HOME

Android签名的一些常见操作和问题汇总

具体新增环境变量的方法可以参考配置Gradle环境变量

再次双击运行re-sign.jar后,没有了刚才的提示,

Android签名的一些常见操作和问题汇总

2、将要重新签名的apk拖到这里,弹出以下

Android签名的一些常见操作和问题汇总

ERROR:Cannot run program "xx/zipalign"

![在这里插入图片描述](https://img-blog.csdnimg.cn/20190919164618530.png

Android签名的一些常见操作和问题汇总

解决办法

在第一步下载的文件中有一个zipalign,放到提示的路径下即可

3、等一会儿,成功会弹出以下弹框

Android签名的一些常见操作和问题汇总

注意这里显示了包名和启动Activity,记住这些信息,自动化测试会用到

我们可以对比下前后签名信息

​​如何使用CMD查看签名信息​​

继续阅读