Bootstrap

Android 如何反编译APK获取源码

前言:

 这段时间,对Apk 进行了混淆处理。又想起之前学的一点皮毛(反编译apk)。

一.想回顾一下反编译是怎么进行反编译的。自己总结的。总比看别人的要更让自己容易理解。

二.想看看自己的混淆启动后。看看混淆后的效果怎么样。

混淆处理可以参考鄙人的另外一遍文章(只提供思路)。

Android Studio 开启配置混淆功能可能遇到的问题以及解决思路

正文:

            工具下载:Apk反编译工具下载

                              AXMLPrinter2工具下载

接下来进入主题。(这里提供比较简单的一个方法。获取还有更简单的方法)

给大家介绍一个特别牛的工具全自动的。(Android逆行助手.exe)

1、将.apk 文件直接拖进逆向助手 。选择 提取dex  点击操作,执行完生成dex 文件

2、将提取好的dex 文件 再次拖进逆向助手,选择  dex转jar  点击操作、当执行完就会自动帮我们打开了

简单吧。就这样

接下来给大家介绍一下。自己手动去反编译的步骤。

 1、打包后拿到.apk文件。

         

2、将.apk文件,后缀改为 .zip 格式

          

3、解压.zip文件,获取图片、icon、等等文件

          

 4、将下载好的反编译工具,解压。将dex文件拷贝到  反编译工具\lib\dex2jar 目录下

            

5、在这个文件打开 cmd 控制台 .在控制台 输入 d2j-dex2jar.bat classes.dex  当执行完我们就可以在当前文件下看到classes-dex2jar.jar 文件

 

6、如何打开我们的 反编译工具\lib\jd-gui.exe  工具  将我们刚刚生成的calsses-dex2jar.bat 文件拖进gui.exe就可以看代码了


7、JAVA代码中用AXMLPrinter2解析XML二进制文件AndroidManifest.xml乱码问题

将下载的解析插件下载解压,复制AndroidManifest.xml至于相同目录下,在当前目录按住shift键点击鼠标右键,在此处打开Powershell窗口”(win10系统),输入命令:

java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest.txt

生成的AndroidManifest.txt就可以打开预览了,如图:

      好了到这里就全部介绍完了。希望对大家有所帮助。

     工具下载:Apk反编译工具下载

                       AXMLPrinter2工具下载

;