Ubuntu使用ApkTool进行APK反编译
1.Apktool下载
http://ibotpeaches.github.io/Apktool/
下载最新版本Apktool_2.1.1.jar
2.新建一个apktool目录,将Apktool_2.1.1.jar放到目录中。
3.在apktool目录中新建一个apktool.sh脚本文件,并编辑内容:
#!/bin/bash cd $(dirname $0) pwd java -jar apktool_2.1.1.jar $@
4.编辑~/.bashrc,将apktool目录加入PATH中。
5.重启终端,即可使用apktool.sh命令来进行反编译。
apktool.sh d test.apk
6.反编译后,输出目录中又smali文件夹,这个就是src源码。
------------------------------------------------------------------
要将smali转化为java,才算真正反编译成功。
在Windows环境下,可以用这个:http://www.hensence.com/cn/smali2java/
Ubuntu环境下怎么办?
(1)先到github下面下载:smali2java将项目zip包解压。
(2)下载gradle
下载地址:http://gradle.org/gradle-download/
安装参考:Ubuntu之安装Gradle
(3)进入smali2java解压后的目录
cd '~/下载/smali2java-master/smali2java'
(4)用gradle命令进行编译
gradle build
编译后,可以得到smali2java.jar
---------------------------------------------------------
然而Smali2java项目已经很久没有更新,只能用于一些简单的JAVA程序。转换得到的JAVA文件内容可能是不全的。
所以,学习Smali语法,直接看Smali文件才是王道。下面是几个有关Smali的链接,看了之后有一些了解,基本就可以看懂Smali文件了。