APK的重签名

如果需要编写测试程序测试正式版app,就要先去除正式版的签名,换上debug版签名,只要签名一致,测试程序才能与app通讯。

1.先将app原本app签名去除。

把apk文件改成.zip后缀解压,把META-INF 目录目录删除。META-INF放置的是原本app的签名的。再重新压缩,最后把后缀改为.apk

2.先查看debug版签名位置:

安卓debug版签名debug.keystore,如果使用eclipse的adt,可以如下方式查看:

打开eclipse,window->Preferences->Android->Build->Default debug keystore,这个Default debug keystore对应的路径就是我们 要找的debug.keystore

3.使用jarsigner去签名。

jarsigner在jdk的bin文件夹下,配置了jdk变量的话,打开cmd直接输入javsginer可以查看使用方法。

     查看某个应用程序是否签名:jarsigner -verify -verbose -certs D:\auto\MyWorkSpace\hehe.apk
     1.去除原来签名信息:将apk后缀名改为.zip,然后从winrar中删除META-INF文件夹,删除后重新将文件名重新改成apk。
     2.将eclipse自带的debug.keystore拷贝到其他盘符,将apk也放在这个盘符下,然后命令行cd到这个盘符下。

     3.jdk6中签名方式:jarsigner -keystore debug.keystore -storepass android -keypass android unsign.apk androiddebugkey,jdk1.8略有区别:jarsigner -digestalg SHA1 -sigalg SHA1withRSA -keystore debug.keystore -storepass android -keypass android unsign.apk androiddebugkey

----最后一个字段androiddebugkey直接输入该字符串

     4.zipalign 4 unsign.apk sign.apk这样重新生成了签名的apk,zipalign能够使apk文件中未压缩的数据在4个字节边界上对齐(这个在其他文章看回来的,暂时不深究其含义,以后有机会研究)。

  

4.最后,安装已重签名的apk安装,我使用adb命令:

adb install sign.apk

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值