非常好用的Android反编译工具jadx-.6.1
创始人
2026-02-08 09:04:41
0次

反编译软件有哪些_apk反编译软件_反编译软件是干什么用的

文字总数:3234字17张图片

预计阅读时间:9 分钟

一、简介

今天给大家介绍一款非常好用的Android反编译工具jadx。 jadx的功能非常强大。 对于我来说,基本满足了我日常的反编译需求。

jadx的优点:

图形界面。

拖放操作。

反编译并输出Java代码。

导出 Gradle 项目。

这些优点使jadx成为我反编译的首选。 它可以处理大部分的反编译需求,基本上是我反编译工具的首选。

接下来我们看看jadx的使用方法。

2.使用jadx2.1安装jadx

jadx本身是一个开源项目,源码已经在Github上开源。

贾德克斯Github:

如果有兴趣,可以直接clone源码并在本地编译。 但大多数情况下,我们需要一个编译版本。 编译后的版本可以从sourceforge下载。

sourceforge 下载 jadx。

直接下载最新版本即可。 现在最新版本是jadx-0.6.1。 下载并解压后,你会得到这样的目录结构:

反编译软件有哪些_apk反编译软件_反编译软件是干什么用的

对于 Mac 或 Linux,请使用 jadx-gui。 Windows下,需要使用jadx-gui.bat。 双击即可直接运行。 如果有安全警告,请忽略它。 (以下文章主要以Mac环境进行说明,Windows下大部分操作类似)

2.2 使用jadx

前面提到过,双击 jadx-gui 就可以直接运行它。 运行后会启动一个终端,在这里你可以看到你所有操作的输出,错误日志也会在这里输出。

打开后,您可以选择 apk、dex、jar、zip、class 或 aar 文件。 可以看到jadx支持的格式非常多。 基本上,它被编译成Java虚拟机可以识别的字节码,并且可以用于所有这些。 反编译。 除了选择文件之外,还可以直接将apk文件拖拽进去,非常实用。

手上随机找了一个Apk扔进去看看反编译效果。

apk反编译软件_反编译软件有哪些_反编译软件是干什么用的

这是反编译的代码。 对于apk来说,一些xml资源也被反编译恢复,非常方便。

3、jadx的优点

jadx使用起来非常方便,而且提供的gui程序也非常好用。 我们首先介绍一下jadx-gui程序的一些有用的技术。

3.1 强大的搜索功能

jadx提供的搜索功能非常强大,而且搜索速度也不慢。

您可以单击“导航”->“文本搜索”或“导航”->“类搜索”来激活它。 更方便的是快捷键。 我的本地快捷键是control + shift + f。 这因人而异。

反编译软件是干什么用的_反编译软件有哪些_apk反编译软件

Jadx的搜索支持四个维度,Class、Method、Field、Code。 我们可以根据我们搜索到的内容进行检查。 最大的范围是Code,它基本上是文本匹配搜索。 这里反编译出来的Apk集成了支付宝支付,所以可以搜索到支付宝内容。

3.2 直接搜索引用代码

有时我找到关键代码并想看看它在哪里被调用或引用。

jadx 也提供这方面的支持。 找到我们需要查看的类或方法,右键单击它并选择“查找用法”。

反编译软件是干什么用的_反编译软件有哪些_apk反编译软件

之后,它将帮助您搜索该项目中引用它的位置。

apk反编译软件_反编译软件是干什么用的_反编译软件有哪些

点击就可以直接跳转到,非常方便。

3.3 反混淆

一般Apk在发布之前都会混乱,这基本上是国内app的标准。 这样的类最终会被混淆为abc,方法也会变成abca(),这其实对我们的阅读是非常不利的。 我们很难看到 a.java 文件并确定它是哪一个。 我们还需要根据包名来区分。

反混淆函数可以给它们起一个特殊的名称,使其在本项目中具有唯一的名称,方便我们识别和查找。

可以在“工具”->“反混淆”中激活此功能。

接下来我们看看它是如何工作的。

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

开启去混淆后的效果如下:

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

如您所见,a 变为 p003a。 不知道大家觉得这样看是否更方便呢?

3.4 一键导出Gradle项目

虽然,jadx-gui可以直接读取代码,但是还是很方便的。 但毕竟不如我们常见的编辑器方便。 而恰巧 jadx 也支持将反编译的项目直接导出到 Gradle 编译的项目中。

可以通过文件 -> 另存为 gradle 项目来激活此功能。

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

最终的输出目录可以直接通过Android Studio打开。

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

然而,虽然AS可以直接打开它,但大多数情况下你无法编译它。 但这样的功能主要是利用AS强大的IDE功能,比如方法跳转、引用搜索等,让我们阅读起来更加方便。

4. jadx的错误处理

jadx在使用过程中也会出现一些错误。 以下是一些常见错误的总结。

4.1 代码不一致

有时,有些代码未完全反编译,您会看到带有 JADX 警告:不一致代码标志的错误。

apk反编译软件_反编译软件是干什么用的_反编译软件有哪些

这段代码已经不再是Java代码了,不利于我们阅读。 为了处理这种情况,jadx可以尝试打开Show不一致代码开关。 您可以在“文件”->“首选项”中找到它。

反编译软件是干什么用的_反编译软件有哪些_apk反编译软件

开启不一致代码后,我们再看一下这段代码,会感觉很熟悉。

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

这样处理的代码大部分都是伪代码,可能会出现错误。 下面我们就具体问题具体分析一下。

首选项中有很多开关。 如果您有兴趣,可以自行探索。

4.2 反编译错误或滞后

jadx反编译一些小Apks毫无压力。 但对于一些较重的Apk,一般是大于50MB的Apk,使用jadx反编译时可能会遇到卡顿的问题。

如果你查看终端中的Log输出,应该能够发现其实是OOM导致的。

反编译软件是干什么用的_apk反编译软件_反编译软件有哪些

针对内存不足引起的问题,官方也提供了一些解决方案。

1.减少处理线程数。

为了加快编译效率,jadx使用了多线程,多个线程会消耗更多的内存。 因此,减少反编译时的线程数是一个有效的方法。

如果使用命令行,可以使用-j 1参数将线程数配置为1。如果不配置,则默认线程数为4。

如果您使用 jadx-gui,您可以通过在 Preferences 中配置处理线程计数来配置线程数。

2.修改jadx脚本

直接编辑./bin目录下的jadx脚本,在配置中找到DEFAULT_JVM_OPTS,设置为DEFAULT_JVM_OPTS="-Xmx2500M"即可配置当前使用的内存大小。

如果是Windows系统,则需要编辑jadx.bat文件。

3.使用命令行命令

如果以上方法都不起作用,并且没有更好的办法,可以直接使用命令行,通过jadx命令进行编译。 并将线程数配置为1。虽然速度较慢,但​​大多数情况下都可以正常输出反编译代码。

例如:

jadx -d 输出 -j 1 类.dex

要更改命令,可以通过 jadx -h 命令查看。

反编译软件有哪些_反编译软件是干什么用的_apk反编译软件

仔细看看jadx命令配置的参数。 基本上你可以在Preferences中找到对应的配置项。 相互对比了解一下,应该不难发现如何使用。

5. 总结

jadx确实非常好用。 到这里它的使用基本上已经解释清楚了,还有一些小技巧。 自己尝试一下吧。

您在反编译过程中使用jadx有遇到什么问题吗? 如果大家有更好的工具推荐,可以在留言区给我留言apk反编译软件,我们一起讨论。

今天apk反编译软件,我在城厢墨影公众号后台回复了“成长”。 我会把我整理的一些学习资料发给大家,包括:Android反编译、算法、设计模式、虚拟机、Linux、Web项目源码。

反编译软件是干什么用的_反编译软件有哪些_apk反编译软件

相关内容

热门资讯

大浪淘金APP黑幕揭秘:内盘操...   大浪淘金APP平台最隐蔽的黑幕,在于其完全封闭的内盘交易系统。这个看似与国际市场接轨的交易平台,...
告别固定工资实现财富自由?一品...   普通投资者被广告宣传诱导,注册就送现金,充值返现金券等等这些宣传方式,都是在引流到平台开户,不怕...
哈易购APP打着现货交易幌子搞...   网络上各类白银、铂金等贵金属投资广告铺天盖地,不少平台以"现货交易"为名,暗中却从事着非法期货交...
5元起投!高额收益?中国白银、...   上海华通白银国际交易中心有限公司(以下简称“华通白银国际”)打着“白银、铂金现货订购”的旗号,实...
"九州订购APP、起...   近年来,贵金属投资热度持续攀升,但乱象也随之而来。一些不法分子趁机搭建虚假交易平台,打着"低门槛...
坚锅淘金APP投资者频繁爆仓亏...   坚锅淘金APP对外宣称是贵金属现货交易平台,日常出入金看似畅通无阻,给人一种合规运营的假象。但事...
斗金订购APP“5元订购现货”...   斗金订购APP“5元订购现货”骗局揭秘:充值易、回本难,越陷越深!  许多投资人在未核实平台合规...
贵金属APP乱象曝光:&quo...   当前市场上部分贵金属类APP未取得正规交易资质,涉嫌误导消费者参与白银、铂金等商品的非合规交易!...
华通白银、银宝街APP被指虚假...   警惕现货白银投资陷阱:上海华通白银背后的平台涉嫌非法期货交易  近年来,各类现货白银交易平台以“...
充值送300,月入过万?别被量...   如今,网络上充斥着大量未经批准的贵金属及其他产品订购交易平台。这些平台普遍缺乏合法经营资质,却将...
鑫汇智投APP贵金属非法期货、...   鑫汇智投APP贵金属非法期货、人为控盘,大量投资者遭恶意收割  鑫汇智投APP长期以“低门槛、高...
矅光智策APP非法贵金属交易骗...   不少投资人在矅光智策APP上进行贵金属交易后出现了严重亏损。许多人在下载该平台时,根本不清楚其是...
飞鸽订购APP非法期货交易骗局...   飞鸽订购APP非法期货交易骗局,很多投资者根本没搞懂规则就盲目充值,买涨买跌跟买cai票一样!平...
天龙白银APP被操控的非法期货...   中小投资者在网络平台参与商品现货订购交易,表面看似合规合法,实则暗藏诸多难以察觉的风险。商品现货...
下载送试玩金?千万别碰!带你揭...   当前,许多贵金属APP交易平台正采用欺诈性营销手段。它们通过抖音等短视频平台,以“5元起投”“充...
泡泡淘金APP骗局:打着&qu...   泡泡淘金APP骗局:打着"商品订购"幌子,实则非法期货收割投资者!投资需谨慎,切勿轻信“高额回报...
南商云购APP虚假电子盘背后的...   南商云购是虚假电子盘吗?它是否具备合规的交易资质?这个曾经的"现货电子盘"如今摇身一变,披上了"...
警惕"祥龙订购&qu...   祥龙订购APP、掌上银牛APP等平台背后的运营方——四川禄宏商品现货市场有限公司,仅具备现货交易...
中国白银、华银:虚假宣传、后台...   中国白银APP宣称是上市公司“中国白银集团”与“上海华通白银国际交易中心”旗下的现货交易平台,提...
起底“优品订购”APP非法期货...   “优品订购”APP根本不具备任何合法的交易资质。其背后的运营方仅凭随便注册一家公司、开发一款交易...