APK二次签名方法
2016-09-19 14:10
267 查看
利用标准的java工具keytool.exe(位于jdk\jre\bin目录下)创建key,利用jarsigner.exe工具使用生成的key来生成证书和给程序签名(位于jdk\bin目录下)。
步骤:
1)、创建keystore
keytool -genkey -alias demo.keystore -keyalg RSA -validity 20000 -keystore demo.keystore
/*说明:keytool工具是Java JDK自带的证书工具
-genkey参数表示:要生成一个证书(版权、身份识别的安全证书)
-alias参数表示:证书有别名,-alias demo.keystore表示证书别名为:demo
-keyalg RSA表示加密类型,RSA表示需要加密,以防止别人盗取
-validity 20000表示有效时间20000天
-keystore demo.keystore表示要生成的证书名称为demo
*/
2)、删除之前的签名文件
用解压缩工具解打开apk文件(如:更改 为 zip,便可用压缩工具打开,并找到下面的目录META-INF下的
CERT.RSA和CERT.SF文件,并删除该文件。删除后,再次更改后缀名为.apk
注:
META-INF目录:存放签名后的CERT和MANIFEST文件,用于识别软件的签名及版权。
Rres目录:存放各种Android原始资源,包括:动画anim、图片drawable、布局layout、menu菜单、xml等等
AndroidManifest.xml编码后的Android项目描述文件,包括了Android项目的名称、版本、权限、程序组件描述等等
aclasses.dex编译后Class被dx程序转换成Dalvik虚拟机的可执行字节码文件
qresources.arsc所有文本资源的编译产物,里面包含了各Location对应的字符串资源。
3)、使用生成的key对apk签名 ,命令:
jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
/*说明:jarsigner是Java的签名工具
-verbose参数表示:显示出签名详细信息
-keystore表示:使用当前目录中的demo.keystore签名证书文件。
-signedjar demor_signed.apk demo.apk demo.keystore 正式签名,三个参数中依次为签名后产生的文件demo_signed,要签名的文件demo.apk和密钥库demo.keystore.
*/
步骤:
1)、创建keystore
keytool -genkey -alias demo.keystore -keyalg RSA -validity 20000 -keystore demo.keystore
/*说明:keytool工具是Java JDK自带的证书工具
-genkey参数表示:要生成一个证书(版权、身份识别的安全证书)
-alias参数表示:证书有别名,-alias demo.keystore表示证书别名为:demo
-keyalg RSA表示加密类型,RSA表示需要加密,以防止别人盗取
-validity 20000表示有效时间20000天
-keystore demo.keystore表示要生成的证书名称为demo
*/
2)、删除之前的签名文件
用解压缩工具解打开apk文件(如:更改 为 zip,便可用压缩工具打开,并找到下面的目录META-INF下的
CERT.RSA和CERT.SF文件,并删除该文件。删除后,再次更改后缀名为.apk
注:
META-INF目录:存放签名后的CERT和MANIFEST文件,用于识别软件的签名及版权。
Rres目录:存放各种Android原始资源,包括:动画anim、图片drawable、布局layout、menu菜单、xml等等
AndroidManifest.xml编码后的Android项目描述文件,包括了Android项目的名称、版本、权限、程序组件描述等等
aclasses.dex编译后Class被dx程序转换成Dalvik虚拟机的可执行字节码文件
qresources.arsc所有文本资源的编译产物,里面包含了各Location对应的字符串资源。
3)、使用生成的key对apk签名 ,命令:
jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
/*说明:jarsigner是Java的签名工具
-verbose参数表示:显示出签名详细信息
-keystore表示:使用当前目录中的demo.keystore签名证书文件。
-signedjar demor_signed.apk demo.apk demo.keystore 正式签名,三个参数中依次为签名后产生的文件demo_signed,要签名的文件demo.apk和密钥库demo.keystore.
*/
相关文章推荐
- apk签名方法
- Robotium_android apk签名打包 原理 用处 方法
- apk签名的重要性和方法
- 查看APK的签名的方法
- [unity]Unity3d获取APK签名及公钥的方法
- apk签名方法总结
- jarsigner重新签名apk无法安装的解决方法
- 查看APK中MD5签名的方法
- Android 4.2 JellyBean apk 签名方法
- APK重新签名方法
- APK_给APK文件签名方法
- Android 4.2 JellyBean apk 签名方法。
- 解决在eclipse中将android项目生成apk并且给apk签名的实现方法详解
- android apk签名方法
- windows下eclipse中,涉及源码编译的apk开发——使用系统签名机制解决方法
- APK编译、汉化及签名工具Dodo APKTool+APKSign Beta1.0使用方法
- 对apk进行签名的方法
- Android APK破解、反编译、打包签名基本思路与方法
- jarsigner重新签名apk无法安装的解决方法
- apk签名方法