每次自己学点东西,总要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