重新签名Apk

来源:互联网 发布:淘宝康健泰老人坐便椅 编辑:程序博客网 时间:2024/04/26 17:47

每次自己学点东西,总要write down,所以里面的知识也许在网上也能找到,只不过我用我自己学到的方式表达了出来。


首先重新签名apk确定你要有jdk环境。


没有这个环境请移步安装。

第一点:制作自己的签名证书

the first:

开始 -> 搜索cmd -> 右键以管理员运行 

(如果直接运行的话,你最后会悲剧的!因为c盘下你这个用户是没有权限生成文件的!所以请切记这一步!)

the second:

cd 到你的jdk/bin目录(到时候生成的证书就在这个目录下)

比说我的

cd C:\Program Files\Java\jdk1.7.0_51\bin

然后就开始制作自己的签名证书了!请输入以下命令

keytool  -genkey -alias xxx.keystore -keyalg RSA -validity XXX天 -keystore xxx.keystore

-genkey 是生成一个新的证书, -alias 是别名,给自己的证书取一个别名 比如我的zsq.keystore  -validity 后面跟的是有效天数,就像我们的网银证书一般都是有有效天数的

 最后生成 -keystore xxx.keystore 这个证书名称 这里 我给自己还是取了zsq,keystore ,虽然我没尝试过名称跟别名不同的情况,不过有兴趣的同学可以尝试下

最后出现如下图所示


命令成功后会让你输入你的证书密码 你自己设置两次! 密码不显示!

然后让你输入你的姓氏,你的组织,你的单位,您的城市,你的身份,你的国家,最后让你输入是否来确认,我输入是,最后再次输入两次密码(之前的!) 就如上图


然后你就可以在jdk\bin这个目录下找到你生成的xxx.store 比如我的zsq.keystore


第二点:删除apk里面原有的签名证书

准备工作:

把apk解压出来,用压缩工具打开解压即可

比如WinRAR,又比如ZIP

比如我解压到D:\Sign文件夹下的所有apk文件


找到META-INF这个文件夹,然后删除这个用户识别软件版权与证书的文件夹!


之后重新压缩成一个压缩文件(把后缀名改为apk


之后我们又要进入命令阶段了


先把doc下目录切换到刚才那个Sign文件夹

cd d:\Sign

d:

然后就显示刚才那个文件夹了

然后输入

keytool -genkey -v -keystore PATH/TO/YOUR_RELEASE_KEY.keystore -alias YOUR_ALIAS_NAME -keyalg RSA -keysize 2048 -validity 10000

"PATH/TO/YOUR_RELEASE_KEY.keystore": Type the path in which you want to store the file.

"YOUR_ALIAS_NAME": Give the keystore a name you'll remember.

然后就开始signing了

参考自https://www.scirra.com/tutorials/861/how-to-sign-and-align-your-android-app-apk



0 0