Android反编译、签名、重打包、zipalign一条龙

@[toc]
Java Web版的Android反编译、重打包、签名、zipalign一条龙

1.Android编译打包过程

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

图片来自
https://www.jianshu.com/p/eaaddfe34d11

用到的工具:

1.aapt
Android资源打包工具,生成R.java文件
路径:${ANDROID_SDK_HOME}/platform-tools/appt

2.aidl
Android接口描述语言,转化为.java文件的工具
路径: ${ANDROID_SDK_HOME}/platform-tools/aidl

3.javac
Java Compiler ,编译Java文件,生成对应的.class文件
路径: ${JDK_HOME}/javac或/usr/bin/javac

4.dex
转化.class文件为Davik VM(此处暂不叙述ART)能识别的.dex文件
路径: ${ANDROID_SDK_HOME}/platform-tools/dx

5.apkbuilder
生成apk包
路径: ${ANDROID_SDK_HOME}/tools/opkbuilder

6.jarsigner
.jar文件的签名工具
路径: ${JDK_HOME}/jarsigner或/usr/bin/jarsigner

7.zipalign
字节码对齐工具
路径: ${ANDROID_SDK_HOME}/tools/zipalign

2.Android反编译与重打包

反编译相关工具:

apktool,编译和反编译apk,从apk中提取图片和布局资源
https://ibotpeaches.github.io/Apktool/install/

dex2jar,将可运行文件classes.dex反编译为jar源码文件

jd-gui,查看jar源码文件

apktool windows下安装:
https://ibotpeaches.github.io/Apktool/install/
1.下载apktool.jar最新版

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

2.在apktool.jar的同级目录下新建apktool.bat文件

注意: 文件末尾apktool.jar的名字一定要和apktool.jar名字完全一样,比如是apktool_2.4.0.jar,则apktool.bat文件内也必须指定apktool_2.4.0.jar

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

反编译:

CMD 指令
apktool.bat d source.apk -o <output_dir>
或者
apktool d source.apk -o <output_dir>

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

重打包

CMD 指令
apktool.bat b <intput_dir> -o built.apk
或者
apktool b <intput_dir> -o built.apk

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

3.APK签名

生成签名文件

签名需要keystore文件,可以使用keytool工具生成,一般Java环境都带有keytool命令
可以先配置JAVA JDK环境变量
CMD命令:

keytool -genkey -validity 36000 -keysize 1024 -alias sign -keyalg RSA -keystore C:\Users\cy\Desktop\sign.jks -dname CN=(cy),OU=(cy科技有限公司),,O=(cy科技有限公司),L=(永州市),ST=(湖南省),C=(CN)  -storepass 123456 -keypass 123456  -v

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

签名APK

CMD指令:

jarsigner -verbose -keystore C:\Users\cy\Desktop\sign.jks -storepass 123456 -signedjar C:\Users\cy\Desktop\signed.apk C:\Users\cy\Desktop\appBuild.apk sign

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

签名APK后验证

CMD命令:

jarsigner -verify C:\Users\cy\Desktop\signed.apk

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

4.Android zipalign字节对齐

zipalign优化工具在 D:\Android\sdk\build-tools\xxx目录下 zipalign.exe
小编这里是放到了桌面
CMD命令:

zipalign -f -v 4 C:\Users\cy\Desktop\signed.apk C:\Users\cy\Desktop\zipaligned.apk

《Android反编译、签名、重打包、zipalign一条龙》 在这里插入图片描述

各位老铁有问题欢迎及时联系、指正、批评、撕逼

GitHub
关注专题反编译
关注专题Android开发常用开源库

简书

微信公众号

《Android反编译、签名、重打包、zipalign一条龙》 这里写图片描述

QQ群

《Android反编译、签名、重打包、zipalign一条龙》 这里写图片描述

    原文作者:小编学IT
    原文地址: https://www.jianshu.com/p/78758112206f
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞