Android apk文件反编译
如果你的类(反编译的apk里面的代码)里面有lambda表达式的话,会出现反编译失败哦
还有反编译能拿到:xml、照片、代码
反编译大概流程介绍
第一步:使用*“apkTool.jar"去反编译apk拿到xml、照片等。
第二步:自己去用windows解压工具,将apk解压拿到classes.dex文件(如果解压之后有多个,还是只需要拿classes.dex文件)。然后使用"dex2jar”*工具,将dex制作成jar包。
第三步:运行"jd-gui.exe"工具,将第二步得到的jar包直接拖进去,就能看到反编译之后的代码了。
开始反编译啦~~~~
一、工具准备
1、你要反编译的apk;
2、apkTool.jar;(下载链接)
3、dex2jar工具;(2.0版本下载链接)(2.1版本下载链接)
4、jd-gui.exe。(1.4版本下载链接)(1.6.6版本下载链接)
版本多的很,你自己随便挑,,你也可以去官网下载或者是去其他地方下载,我只设置了dex2jar的2.1版本和jd-gui.exe文件的1.6.6版本收取很少的积分,其他文件下载是免积分哦!!!
二、动手干起来~
1、使用apkTool.jar反编译apk拿到xml、照片:
找到你下载存放apkTool.jar包的位置,按住键盘的shift,然后鼠标点击右键,会看到出现弹框,弹框里面有“open cmd here as Admin”,如下图:
点击"open cmd here as Admin",进入dos界面,使用jar包去反编译apk,如下图:
上图里面的cy目录结构如下:
2、使用dex2jar将dex文件制作成jar文件
(1)将你的apk文件后缀名修改为rar。
(2)使用windows解压工具将其解压,然后在里面拿到classes.dex文件,解压完如下图:
(3)将classes.dex文件复制到dex2jar文件夹里面,复制完如下:
然后在截图的界面位置,按住键盘的shift,然后鼠标点击右键,会看到出现弹框,弹框里面有“open cmd here as Admin”,点击点击"open cmd here as Admin",进入dos界面,使用bat将classes.dex文件变异成 jar 文件。执行过程和结果如下:
3、使用jd-gui.exe工具查看jar文件
jd-gui.exe文件如图:
直接将上面dex2jar生成的jar包拖进去,这个拖的动作我就不截图了,我将你结果贴出来:
正常情况下到这里就完事啦,下面我贴一些jd-gui 无法正常双击执行的问题:
如果双击jd-gui.exe 不能运行,提示"A Java Exception has occurred" ,如下图:
出现这个情况原因可能有多种,我这里的解决办法是按住键盘的shift,然后鼠标点击右键,会看到出现弹框,弹框里面有“open cmd here as Admin”,点击点击"open cmd here as Admin",进入dos界面,输入java -jar jd-gui.exe ,然后回车就能正常启动了,如下:
但是这个1.6版本的不能直接将jar包拖进去,但是你可以点击"File",然后点击"open file",如下图:
去找到你第二步生成的jar,就能看到代码啦。