美文网首页
Android 常用的反编译

Android 常用的反编译

作者: 所幸时光未苍凉 | 来源:发表于2019-06-04 18: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 闪退问题

    相关文章

      网友评论

          本文标题:Android 常用的反编译

          本文链接:https://www.haomeiwen.com/subject/lpvgtctx.html