apk反编译工具:
1.apktool 利用命令行查看Java代码,需配合GUI 查看代码
缺点:查看Java代码时,需要先把apk文件变成zip文件,获取到dex文件,运行命令行d2j-dex2jar.bat
反编译:Java -jar apktool_xx.jar d -f 编译的apk -o 反编译后的apk
回编译:Java -jar apktool_xx.jar b 反编译后的apk -o 回编译后生成的apk路径
签名:jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore 签名文件路径 -signedjar 签名后的apk路径 签名的apk路径 签名文件名称
生成R文件:aapt package -m -J 生成R文件的路径 -S apk中的res的路径 -I adt中android.jar路径 -M AndroidManifest.xml路径
2.APKDB
优点:反编译、回编译、签名一键操作,简单方便,缺点:查看Java代码时,需要先把apk文件变成zip文件,获取到dex文件,双击之后即可查看代码,但是代码可读性不强,跟apktool反编译的代码差不多,都需配合Gui。当修改Mianfest时,需要把 original文件夹删除,否则修改不生效。
3.JADX
优点:双击jadx-gui.bat ,直接导入apk,方便简单 。如图所示:
举例说明ApkTool、APKDB与JADX编译后的代码区别:
ApkTool、APKDB编译后的代码:
JADX编译后: