Ubuntu使用ApkTool进行APK反编译

Posted 小妖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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文件了。

 1.Smali--Dalvik虚拟机指令语言-->【android_smali语法学习一】

 2.smali文件语法参考

以上是关于Ubuntu使用ApkTool进行APK反编译的主要内容,如果未能解决你的问题,请参考以下文章

Android APK反编译

Android Apk反编译得到Java源代码(五)

使用 apktool 反编译 apk

反编译Android APK的具体步骤是怎样的

反编译.apk时出现apktool错误

使用apktool反编译apk文件