jadx-gui反编译apk

mac电脑: 

打开终端,切到某个路径下,输入以下命令:

  1. git clone https://github.com/skylot/jadx.git  
  2. cd jadx  
  3. ./gradlew dist  
其实这里只是做了两个动作:
第一,使用git命令将 项目clone下来(这里需要配置git环境,如果没有,请先搜资料配置git环境,然后再来)
然后,执行jadx目录 下gradlew脚本,这个是shell脚本

windows电脑:

  1. git clone https://github.com/skylot/jadx.git  
  2. cd jadx  
  3. gradlew.bat dist  
在windows电脑中,步骤与mac是一样的,只是最后一步中,已经不再是./gradlew所对应的shell脚本了,而是windows平台上的bat脚本。 

编译成功后会打出BUILD SUCCESS字样。

在编译成功后,在jadx目录下,会生成一个build目录,其中包含jadx目录和一个jadx-xxx-dev.zip的打包文件。在build/jadx目录下,就是源码编译出的jadx工具及所用jar包。jadx-xxx-dev.zip解压后的内容与build/jadx内容一样,只是将其打包了一下而已,方便移值,可见作者有多用心。build目录结构如下图所示:


2、开始反编译

等完毕后,可以开始了,我就介绍个最简单最常用的用法 
(1)、把apk改成zip 
(2)、解压zip获取class.dex文件 
(3)、将class.dex文件放到jadx目录下

  1. cd build/jadx/  
  2. bin/jadx -d out classes.dex  # 反编译后放入out文件夹下(如果out不存在它会自动创建)  
  3. #or  
  4. bin/jadx-gui classes.dex  # 会反编译,并且使用gui打开  


在使用jadx-gui反编译时,左下角会显示当前反编译的进度:


ok,搞定。

本博客参照启舰大神博客点击打开链接,记录下来,以备使用

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: jadx-gui 是一个 Java 应用程序,用于反编译 Android 应用程序的 APK 文件。与传统的反编译工具不同,它可以直接反编译 Dalvik 字节码,生成易于阅读的 Java 代码。jadx-gui 的运行界面简洁明了,操作简单易用,能够有效地提高开发人员的工作效率。 然而,在进行 APK 反编译后,需要对反编译生成的代码进行修改和优化,然后再进行重新编译。这时候就需要使用回编译工具将修改后的代码重新打包成 APK 文件。回编译工具可以将 Java 代码转换为字节码文件,再将多个字节码文件打包成 DEX 文件,最后将 DEX 文件和资源文件打包成 APK 文件。 jadx-gui 提供了一个简单的回编译功能,通过点击菜单栏中的 "Save all sources" 选项,可以将修改后的 Java 代码保存到一个指定的目录下。然后,可以使用 Android 开发工具中的 dx 工具将多个字节码文件转换为 DEX 文件。最后,使用 Android 打包工具生成新的 APK 文件即可。 需要注意的是,由于 jadx-gui反编译功能并非完美无缺,可能会存在一些反编译错误,导致回编译时出现问题。此时,需要手动修改代码,或者使用其他反编译工具进行重试。总之,回编译是一个相对复杂的过程,需要开发人员有一定的编程经验和技能。 ### 回答2: jadx-gui 是一款可以将 Android 应用反编译的工具,它可以将编译后的.dex 文件(Dalvik 字节码)转换成易于阅读的 Java 代码。但是有时候我们需要将反编译后的 Java 代码重新编译成.dex 文件,这就需要使用到 jadx-gui 的回编译功能。 回编译是一个较为复杂的过程,需要注意以下几个方面: 1. 代码修改:由于反编译后的 Java 代码可能存在语法问题、变量名不规范等问题,需要人工修改并重命名,确保代码的正确性和可读性。 2. 导入依赖:在重新编译代码时,需要将应用的依赖库加入到类路径中,确保代码的运行。 3. 编译运行环境:为了编译运行应用,需要安装 JDK、Android SDK,并配置好相关环境变量。 4. 编译工具:回编译需要使用到编译工具,例如 javac、dx 等,在编译前需要确保这些工具已经正确安装并配置好环境变量。 总的来说,jadx-gui 的回编译功能虽然方便,但在使用前也需要我们做一些准备工作和代码修改。如果代码比较复杂,可能需要进一步的调试和测试。 ### 回答3: jadx-gui是一个能够将Android应用反编译的工具,它能够将APK文件中的dex文件反编译成Java代码。在反编译时,jadx-gui会将APK文件中的所有类、方法、字段以及流程图等信息展示给用户,方便用户对应用程序进行分析。 回编译指的是将反编译后的Java代码重新编译成可运行的APK文件。通常情况下,我们在进行应用程序调试时,会使用反编译工具将APK文件反编译成Java代码,进行分析和查看。如果需要对应用程序进行修改或更新,就需要将修改后的Java代码回编译成APK文件。 使用jadx-gui进行回编译操作相对比较简单,只需要在GUI界面选择需要回编译的Java代码所在的文件夹,然后点击“Build”按钮即可开始回编译。在回编译的过程中,需要注意一些细节问题,如包名、签名等信息,在回编译前需要进行修改和设置,以确保回编译后的APK文件能够正常运行。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值