apk文件反编译
最近正好在做Apk文件的反编译,今天整理出来分享给大家,如下:
1、 准备工具
1.1 apktool
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
1.2 dex2jar
作用将apk反编译成java源码(classes.dex转化成jar文件)
1.3 jd-gui
作用:查看APK中classes.dex转化成出的jar文件,即源码文件
以下是本人所选用的工具版本,具体用什么版本依照自己安装的java的jdk版本确定
本人jdk版本:
注意:版本达不到的话,会出现各种错误,会大大影响工作的进度。
2.反编译流程
2.1将apktool文件解压,如图:
有些网站可能会说解压得到三个文件分别是aapt.exe,apktool.bat,apktool.jar
,这里怎么才有两个,其实两个也不会影响编译的进行。
2.2打开命令行界面(运行-CMD) ,定位到apktool文件夹所在位置,输入以下命令:apktool.bat d -f AccountMS.apk
2.3打开AccountMS1文件如图:
2.4生成的文件和文件夹当中,我们关心的是【res】文件夹中和AndroidManifest.xml文件,打开res文件夹,里面就有我们想要看到的东西了,如下图所示:
这里不再一一打开。
2.5打开解压后的文件如图:
到这里不知道大家有没有发现反编译得到的文件,与解压后得到的文件之间的区别,有兴趣的同学可以观察一下。
2.6在解压文件中得到其中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的工具dex2jar-2.0文件夹内。
2.7、在命令行下定位到dex2jar-2.0.bat所在目录,输入dex2jar-2.0.bat classes.dex,效果如下:
此时的文件夹中已经出现新的文件。
3、反编译classes.dex得到classes-dex2jar.jar文件之后,就可以使用【jd-gui】工具将class文件反编译成java源代码了
3.1、启动jd-gui工具,如图:
3.2、打开刚才得到的classes-dex2jar.jar文件,如图:
之后就得到你想要的java源代码
到此apk反编译得到java源文件到此结束了。请大家批评指正,谢谢!!!
- Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式
- Android apk 文件反编译&&如何反编译xml文件&&如何看到apk文件中的java源代码
- 第三方apk文件编译到系统文件(system.img)中的方法
- Android APK文件反编译
- 反编译apk文件,得到其源代码和资源的方法
- apk文件编译到系统文件中的方法
- 让Eclipse编译应用时自动生成.apk文件
- win/mac下反编译Android安装包-APK文件
- Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式
- 游走Android系列之APK文件的反编译、修改和重新编译打包
- 反编译apk - 可以正常反编译xml和java文件
- 【Android】打包过程:生成自动代码->编译->(混淆)->dex文件->生成资源文件->打apk包->(签名)->对齐
- 反编译APK文件的三种方法(转)
- 反编译apk文件,得到其源代码
- 反编译apk文件查看源码,反编译apk获取资源
- apk文件编译到system.img中的方法
- Android APK文件反编译及重编译
- android 编译打包 更新导致apk覆盖失败,提示文件破损,或同名文件异常
- Android Studio编译输出apk文件修改文件名
- 反编译APK文件的方法