重新签名APK文件

截取自:http://www.51testing.com/html/92/115892-223023.html

今天发现一个小伙写的删除APK签名,重新签名APK说明很不错,收藏一下

1. 删除之前的签名文件

1).     用解压工具解压缩apk文件(如:解压到D:\Sign\PhoneBook

 

 

压缩包内容解析:

(1)     META-INF目录:存放签名后的CERTMANIFEST文件,用于识别软件的签名及版权。

(2)     res目录:存放各种Android原始资源,包括:动画anim、图片drawable、布局layoutmenu菜单、xml等等

(3)     AndroidManifest.xml编码后的Android项目描述文件,包括了Android项目的名称、版本、权限、程序组件描述等等

(4)     classes.dex编译后Classdx程序转换成Dalvik虚拟机的可执行字节码文件

(5)     qresources.arsc所有文本资源的编译产物,里面包含了各Location对应的字符串资源。

 

2).     找到下面的目录META-INF,删除目录META-INF

3).     PhoneBook整个文件夹用zip工具,重新打包成zip压缩包,然后更改后缀为apk (注意:产生的PhoneBook.zip中没有二级根目录)

 

 

2.      重新签名APK文件

1).     将证书复制到与需要重新签名的apk文件相同的目录下(如:复制到D:\Sign

2).     doc中切换到需要重新前面的apk文件的目录下

cd D:\Sign

3).     运行下面的命令

jarsigner –verbose –keystore mine123.keystore –signedjar PhoneBook_signed.apk PhoneBook.apk mine.keystore

/*解释:* ^, {& k1 Z. M* P/ M+ K5 n5 hjarsignerJava的签名工具# K8 ~% s# Y. @6 P

-verbose参数表示:显示出签名详细信息

-keystore表示使用当前目录中的mine123.keystore签名证书文件。

-signedjarPhoneBook_signed.apk表示签名后生成的APK名称,% v! a7 e2 v4 W# ]; GPhoneBook.apk表示未签名的APK Android软件, mine.keystore表示别名

*/

 

输入完回车后屏幕如下图显示:

 

 

查看D:\Sign目录,已生成重新签名后的PhoneBook_signed.apk文件

 

 

3.有时候我们需要看APK的签名信息,首先是将apk解压出来,然后找到META-INF目录下的.RSA文件,然后执行如下命令:

keytool -printcert -file XXX_K.RSA 此时会自动打印出MD5,SHA1等所有签名信息。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值