背景说明:
1、dex2jar 工具主要是将 dex 文件转换为包含 class 文件的 jar 文件。
2、JD-GUI 工具是针对从dex 转为jar后的文件,进行可视化读取与展示。
3、apk安装包是一个zip压缩包,如果仅仅是想获取源码文件,并不关心具体资源文件,可跳过第一步 apktool 工具的操作,直接到第二步进行 dex 到 jar 文件的转换。
一、dex2jar 工具官网下载:
- dex2jar 工具 GitHub链接:https://github.com/pxb1988/dex2jar
- 直接获取 Release 的最新版本(我操作时最新版本是 V2.1 版本)
- 跳转到 Releases 页面 Assets 目录,直接下载可执行文件的压缩文件。
- 解压后,命令行进入到该 dex-tools-2-2.1 路径下进行 dex 操作。
二、目标 dex 文件操作:
apk 安装包本质是经过特殊处理的压缩包,可以直接将 target.apk 修改后缀名为 target.zip,然后通过解压工具解压,解压后的文件夹包含各种资源文件和文件夹,以及 dex 文件,如果apk是多个 dex 文件组成,解压后会有多个dex 存在,可逐个操作。
需要注意的是,直接通过 zip 解压出来的文件,资源文件(比如 manifest 等文件)都是一些二进制码,无法直接查看,如果想要查看,请看该专题的第二篇文章来操作。
执行脚本:sh d2j-dex2jar.sh classes.dex
三、通过JD-GUI 工具查看 jar 文件
- JD-GUI官网链接:http://java-decompiler.github.io/
- 下载对应对应系统的工具。
- 下载完成后解压,直接打开JD-GUI 文件工具
- 直接将 之前通过dex2jar生成的 jar文件拖入 JD-GUI 即可查看源码
- 通过工具可以查看到源码是否有混淆。
安卓反编译专题文章:
本文经授权后发布,本文观点不代表立场
免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。避免网络欺诈,本站不倡导任何交易行为。如您私自与本站转载自公开互联网中的资讯内容中提及到的个人或平台产生交易,则需自行承担后果。本站在注明来源的前提下推荐原文至此,仅作为优良公众、公开信息分享阅读,不进行商业发布、发表及从事营利性活动。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。