dex2jar jd_jui 反编译apk

一、dex2jar

https://sourceforge.net/projects/dex2jar/files/   dex2jar 下载兼容 Mac 和  Windows,执行需要 JRE 环境。我这里以 Mac 环境示例

 下载后解压如上图   cd 进目录   然后  

chmod u+x ./dex2jar-2.0/*.sh
./dex2jar-2.0/d2j-dex2jar.sh ./classes.dex

会生成  

dex2jar ./classes2.dex -> ./classes-dex2jar.jar

二、jd-gui

Windows系统可以直接在网上下载jd-gui.exe包

Mac 可以 通过 Homebrew 安装

1)下载命令brew下载及安装:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2)下载安装jd-gui:

brew cask install jd-gui

使用的话  这个是gui的 直接把 jar 包拖进去就好啦 可以全部保存源码的

三、apktool

这是 反编译 Android 的 xml 的。

下载  https://ibotpeaches.github.io/Apktool/install/

使用方法:  apktool d xxxx.apk

四  Smali2JavaUI

下载  http://www.hensence.com/cn/smali2java/#Download

什么是smali?smali是将Android字节码用可阅读的字符串形式表现出来的一种语言,可以称之为Android字节码的反汇编语言。使用baksmaliapktool可以将Android应用程序包(apk或jar)反编译为smali代码。
smali2java工具基于apktool v1.5.0(baksmali v1.3.4)生成的smali文件,依赖于smali文件中的代码行数(.line关键字)和变量别名(.local关键字)等信息,可以最大程度还原原始的java代码。还原出的java代码将具有原始的变量命名,代码的顺序也与原始的java代码保持一致。因此,本工具也具有局限性,仅适用于带有行数和变量别名信息的smali文件(java编译器的编译选项可以在生成的字节码中剔除这些信息)

参考: http://www.hensence.com/cn/smali2java/#Download

猜你喜欢

转载自www.cnblogs.com/lesten/p/13176183.html
今日推荐