Android 常用的反编译

2019-06-04  本文已影响0人  所幸时光未苍凉

最近工作中遇到了一个问题,那就是我这边的运营专员想让我查一下它打包的apk里面的资源文件的Facebook的id写没写错,由于手上没有这个项目的源文件,所以只能自己手动反编译。以下是我参考了一些文章后简单的教程。

使用工具准备

1.官方最新版本号下载地址(自备梯子):

2.CSDN下载:

3.工具介绍:
apktool :资源文件获取,能够提取出图片文件和布局文件进行使用查看
dex2jar :将apk反编译成java源代码(classes.dex转化成jar文件)
jd-gui :查看APK中classes.dex转化成出的jar文件,即源代码文件

反编译流程

一、apk反编译得到程序的源码、图片、XML配置、语言资源等文件
1.将下载好的工具解压放在C盘根目录下面,将要反编译的test.apk拷贝到改文件夹下。
2.打开命令行界面(执行-CMD) ,定位到apktool目录。输入下面命令:

apktool d test.apk
image.png

3.获取成功之后,会发现如今目录下多了个test文件。点击便能够查看该应用的全部资源文件了。
假设你想将反编译完的文件又一次打包成apk,那你能够:输入apktool b test(你编译出来目录)便可,效果例如以下:


image.png

之后在之前的test文件下便能够发现多了2个目录:build和dist(里面存放着打包出来的APK文件)
二、Apk反编译得到Java源码
1.将要反编译的APK后缀名改为.rar或着 .zip,并解压,得到当中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的)。将获取到的classes.dex放到之前解压出来的工具dex2jar-0.0.7.11-SNAPSHOT目录内,在命令行下定位到dex2jar.bat所在文件夹,输入

dex2jar.bat   classes.dex

效果例如以下:

image.png
2.在该文件夹下会生成一个classes_dex2jar.jar的文件,然后打开工具jd-gui文件夹里的jd-gui.exe,之后用该工具打开之前生成的classes_dex2jar.jar文件,便能够看到源代码了。

特别注意:你要反编译的文件一定要放在C盘的根目录里

**快速反编译流程

下载工具包:ApkToolBox_1.6.4.zip
解压文件,并打开到jadxbin目录下,如图所示:

image.png
然后将需要反编译的.apk拖到jadx-gui.bat文件上即可(如果拖上去没有反应或者一闪而过,就得检查一下jdk的环境变量配置是否正确)。

附:jadx闪退问题解决办法:

image.png
image.png

参考链接:
Android APK反编译详解
jadx 闪退问题

上一篇 下一篇

猜你喜欢

热点阅读