需要的工具:

  1.apktool apk打包工具

  下载地址:http://android-apktool.googlecode.com/files/apktool1.5.2.tar.bz2

  安装:直接解压就可以,是一个apktool.jar文件,通过

  $java -jar apktool.jar

  来执行,依赖于java执行环境

  2.dex2jar dex转化jar工具

  下载地址:http://dex2jar.googlecode.com/files/dex2jar-0.0.9.15.zip

  安装:直接解压就可以,是一个目录。里面包括了非常多文件,通过

$./dex2jar.sh

  来执行

  3.假设你没有unzip,安装此解压工具, zip解压缩工具,用于解压jar包(jar包是zip压缩的,所以能够用其他工具取代)

  下载地址:ubuntu $sudo apt-get install unzip

  安装: $sudo apt-get install unzip

        $upzip [src_path] -d [dst_path]

  来执行

  4.jad .class文件反编译工具

  下载地址:http://www.varaneckas.com/jad

http://varaneckas.com/jad/jad158e.linux.static.zip

  安装:直接解压就可以。是一个可运行文件,通过  

./jad

  来执行。须要说明的是,这个须要下载static版本号的,假设不行的话,在去第一个链接里找还有一个下载。


  接下来,工具准备完成了,最好设定一下环境变量。我们就能够反编译apk了

  一、抽取apk资源

运行: $java -jar apktool.jar d [source.apk]

  二、反编译源代码

  (1)解压apk

  $unzip [source.apk] -d [step_1]

  step_1指的是你所须要解压到的文件夹

  (2)进入step_1 文件夹,找到classes.dex文件。将dex文件转化成jar文件

$dex2jar.sh classes.dex

  (3)获得一个classes_dex2jar.jar文件,我们如今要再度解压这个文件

        $upzip classes_dex2jar.jar -d [step_3]

  step_3指的是你解压到的文件夹

  (4)我们获得一个step_3文件夹,我们接下来要反编译该文件夹下全部.class文件  

        $./jad -o -r -s  java -d  src step_3/**/*.class

对于上面的參数。能够直接运行./jad查看,或者Readme.txt查看

  (5)我们再度获得一个src文件夹。该文件夹下就是反编译好的源代码文件了。

也能够使用JD-GUI工具直接查看classes_dex2jar.jar的class文件。

假设以上命令不运行的话。查看文件夹是否正确。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

linux在下面APK反编译软件和过程的描述的更多相关文章

  1. linux下的APK反编译软件及过程介绍 .

    需要工具: 1.apktool apk打包工具 下载地址:http://android-apktool.googlecode.com/files/apktool1.5.2.tar.bz2 安装:直接解 ...

  2. apk反编译、smali修改、回编译笔记

    最近下了一个apk程序,但是一启动会弹出一个流氓广告.这个广告不是原厂商加的,而是有人在原有apk程序的基础上,加了一个壳,让apk先启动他加的广告,再启动原来的程序,很恶心.于是想去掉它. 试了几个 ...

  3. Android APK反编译详解(附图)

    转载自http://blog.csdn.net/sunboy_2050/article/details/6727581 这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而 ...

  4. 从原生APK反编译,拿到界面,用于mono for android

    从原生APK反编译,拿到界面,用于mono for android 1.用apktool反编译apk,得到xxx.apk.de 2.从xxx.apk.de\res\layout 3.复制所有xml到M ...

  5. Android APK反编译详解(附图)(转)

    这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程. 在此郑重声明,贴出来的目的不是为了去破解人家的软件, ...

  6. (转)Android APK反编译详解

    转载地址:http://blog.csdn.net/ithomer/article/details/6727581 这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到 ...

  7. (转)Android-Mac电脑如何进行APK反编译-使用apktool、jd-gui

    最近群里有人问如何在mac下进行apk反编译,我也没试过,以前都是在windows下进行反编译的,windows下很简单,有许多比较好的集成工具,如apkide(改之理),不过我猜mac下应该和win ...

  8. APK反编译之一

    初步接触APK反编译.刚刚使用android-apktool软件反编译了一下QQ.apk,目的只是想看看QQ这个应用软件是内部是如何设计的,希望可以在某些方面借鉴一下.下面就如何反编译做一个简单的记录 ...

  9. Android APK反编译具体解释(附图)

    这段时间在学Android应用开发,在想既然是用Java开发的应该非常好反编译从而得到源码吧,google了一下,确实非常easy,下面是我的实践过程. 在此郑重声明,贴出来的目的不是为了去破解人家的 ...

随机推荐

  1. QTableWidget表格合并若干问题及解决方法

    Qt提供 QTableWidget作为表格的类以实现表格的基本功能,表格中所装载的每一个单元格由类QTableWidgetItem提供.这是基于表格实现 Qt提供的一个基础类,若想实现定制表格和单元格 ...

  2. perl uri_escape(urlencode ) 转换

    [root@wx03 lib]# cat a1.pl #引入模块 use URI::Escape; #urlencode $encoded = uri_escape("[中均]") ...

  3. 电驴 emule 源代码分析 (1)

    关于电驴emule 的源代码,网上有一个  叫刘刚的人 分析的 非常多,可是假设你仅仅是看别人的分析,自己没有亲身去阅读代码的话,恐怕非常难  剖析整个系统. 关于emule  主要就是 连接 kad ...

  4. 请问,如何在windows系统下面同时使用中文和英文的cmd?_百度知道

    请问,如何在windows系统下面同时使用中文和英文的cmd?_百度知道 在批处理开始加一行chcp 437就是英文的cmdchcp 936就是中文的cmd

  5. 多校 4686 Arc of Dream hdu 矩阵解

    构造矩阵如下: Ai*bi AX*BX AX*BY AY*BX AY*BY 0 a(i-1)*b(i-1) Ai 0 AX 0 AY 0 a(i-1) Bi 0 0 BX BY 0 b(i-1) 1 ...

  6. 2.4.1-Java语言基础(常量)

    2.4.1 常量 常量表示不能改变的数值. Java中常量的分类: 1,整数常量.全部整数 2,小数常量.全部小数 3,布尔型常量.较为特有,仅仅有两个数值.true false. 4,字符常量.将一 ...

  7. hdu 4455 Substrings (DP 预处理思路)

    Substrings Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tota ...

  8. Bootstrap,Foundation和TypeScript

    http://www.oschina.net/question/12_128155 http://www.oschina.net/news/72330/typescript-2-0 给自己提个醒,随时 ...

  9. 回文(manacher)

    裸manacher 我竟然写跪了………… 一个地方(偶数)没写清楚…… 我OOXOXOXOXXOXO #include<cstdio> #include<cstdlib> #i ...

  10. HealthKit教程 Swift版:锻炼信息

    原文:HealthKit Tutorial with Swift: Workouts 作者:Ernesto García 译者:Mr_cyz ) 欢迎回到我们的HealthKit系列教程! 在我们系列 ...