Android进阶之路 - Jadx快速实现Apk反编译

闲暇时间,丰富自我,该有一个属于自己的目标了

反编译,或者说是 逆推工程,主要作用在于我们去学习他人的代码和思维方式,所以初心不要错

反编译方式
  • ApkTool (较早方式)

需要分三个地方下载对应的jar包,用于代码,资源的反编译

  • Jadx (较新方式)

轻松操作,一步到位

实践效果

未混淆
这里写图片描述

混淆(此图取自网上
这里写图片描述
分包结构
这里写图片描述
搜索方法
这里写图片描述


安装方法

第一种(简单方便)

第一步:
这里写图片描述
第二步:
这里写图片描述
第三步(选取apk进行编译,等待反编译完成即可):
这里写图片描述

第二种(步骤繁琐,但是相对下载地址稳定)

  • git命令进行安装

在此之前,最好学会 使用Git

第一步:

//根据地址把git的项目克隆到本地
git clone https://github.com/skylot/jadx.git  
//进入项目,这里可以直接图形化操作
cd jadx  

//可使用亦可不使用
./gradlew dist  进行编译(如果不能识别可以使用gradlew.bat dist 试试,这取决于你安装git软件时候的配置)

第二步:

打开As运行此项目,如果报出gradle的某一个版本缺失,可以通过As下载,也可以通过百度找对应的包下载,如果你是AS自动下载的话,系统会自动给你放到正确的目录下,如果你是通过百度下载的包,你需要放在用户文件夹下面,例如 C:\Users\xxx.gradle\wrapper\dists\gradle-xx-xx

若不知道下载哪一个版本的gradle ,可以参考下面的资料 (如:gradle-2.8-all.zip

找到项目目录gradle\wrapper\gradle-wrapper.properties这个文件你会看到

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://http://services.gradle.org/distributions/gradle-2.8-all.zip

当这些问题处理后,编译当前项目(此项目是没有运行操作的!)

第三步:

  • 项目目录
    这里写图片描述
    AndroidStudio结构目录
    这里写图片描述

  • 编译通过后,找到对应文件目录,进行解压使用
    这里写图片描述

  • 解压后对应文件的路径与内容展示
    这里写图片描述

  • jadx-gui.bat执行文件
    这里写图片描述

  • 反编译apk对应的视图

编译会打开的执行窗口
这里写图片描述
编译过程

编译成功
这里写图片描述


所遇问题

问题1:执行jadx-gui.bat文件一直闪,根本打不开且不给任何提示!

解决方式:当你发生使用问题的时候,首先要查看以上三条是否满足,如果没有满足的话,就下载或者配置对应的条件以满足jadx的需求

  • 是否配置环境变量?

查看方法 :在cmd命令行 输入 java 看是否调出 10条以上提示
配置方法:JDK的安装与使用

  • 查看JDK版本
 java -version
  • 查看JVM是32位还是64位

你可以在CMD界面输入"java -d32"或者"java -d64"来检查是否是哪个版本(如果不是该版本的话会提示Error的)

如使用Git下载使用逆推工程的话,可借鉴以下文章

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

远方那座山

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值