用apktool工具进行apk的编译和反编译

1.apktool下载安装

给一个2.0版的csdn地址:http://download.csdn.net/download/txj8612/7408775

下载后无需安装,直接解压缩,得到三个文件:aapt.exe、apktool.bat、apktool.jar。在这三个文件所在的目录打开cmd,可以开始编译和反编译了。

2.输入apktool命令,查看帮助

Apktool v2.0.0-Beta9 - a tool for reengineering Android apk files
with smali v2.0.3 and baksmali v2.0.3
Copyright 2010 Ryszard Wi?niewski <[email protected]>
Updated by Connor Tumbleson <[email protected]>

usage: apktool
-advance,--advanced   prints advance information.
-version,--version    prints the version then exits
usage: apktool if|install-framework [options] <framework.apk>
-p,--frame-path <dir>   Stores framework files into <dir>.
-t,--tag <tag>          Tag frameworks using <tag>.
usage: apktool d[ecode] [options] <file_apk>
-f,--force              Force delete destination directory.
-o,--output <dir>       The name of folder that gets written. Default is apk.ou
t
-p,--frame-path <dir>   Uses framework files located in <dir>.
-r,--no-res             Do not decode resources.
-s,--no-src             Do not decode sources.
-t,--frame-tag <tag>    Uses framework files tagged by <tag>.
usage: apktool b[uild] [options] <app_path>
-f,--force-all          Skip changes detection and build all files.
-o,--output <dir>       The name of apk that gets written. Default is dist/name
.apk
-p,--frame-path <dir>   Uses framework files located in <dir>.

For additional info, see: http://code.google.com/p/android-apktool/
For smali/baksmali info, see: http://code.google.com/p/smali/

3.反编译命令d[ecode]

$apktool d abc.apk -o abc

将abc.apk反编译并输出到文件夹abc。其中abc.apk和abc文件夹都在apktool目录下

4.编译命令b[uild]

$apktool b abc 
时间: 2024-08-26 18:04:41

用apktool工具进行apk的编译和反编译的相关文章

.Net 转战 Android 4.4 日常笔记(7)--apk的打包与反编译

apk(android package)就是我们安卓系统的安装文件,可以在模拟器和手机中直接打开安装,从项目中打包apk有几种方式可取 一.最简单的方法(类似我们的winfrom) 只要我们调试或者运行过项目,在项目下的bin debug下就有同名apk文件了(Eclipse)下是这样的.在Android下变成了\app\build\apk下了 当然我们不能把这个apk放在商店.没有签名会被人家的apk替换 二.签名发布 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过

ilasm.exe与ildasm.exe的使用(编译与反编译)

ilasm.exe与ildasm.exe的使用(编译与反编译) 首先打开cmd命令.cd 到 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin 看看你有没这2个工具,没的话自己百度找下 然后把要查看的 dll文件或者exe文件拉进来这里面(因为我们是要用命令,你直接打开ildasm.exe也可以找到各目录打开) 比如 text.dll  (里面有console.writeline("hello word")) ildasm

python编译以及反编译

在Python2.3之前Python自带反编译的工具,高版本的貌似这个反编译的已经不能用了. 据说是在Python2.7上最好用的反编译工具uncompyle 代码地址 http://github.com/gstarnberger/uncompyle 编译Python 把Python文件编译为pyc python -m py_compile file.py 反编译Python 把pyc反编译成py python uncompyler.py -o . file.pyc 查看帮助 python un

Java代码的编译与反编译那些事儿

编程语言 在介绍编译和反编译之前,我们先来简单介绍下编程语言(Programming Language).编程语言(Programming Language)分为低级语言(Low-level Language)和高级语言(High-level Language). 机器语言(Machine Language)和汇编语言(Assembly Language)属于低级语言,直接用计算机指令编写程序. 而C.C++.Java.Python等属于高级语言,用语句(Statement)编写程序,语句是计算

Java 编译与反编译

编程语言 在介绍编译和反编译之前,我们先来简单介绍下编程语言(Programming Language).编程语言(Programming Language)分为低级语言(Low-level Language)和高级语言(High-level Language). 机器语言(Machine Language)和汇编语言(Assembly Language)属于低级语言,直接用计算机指令编写程序. 而C.C++.Java.Python等属于高级语言,用语句(Statement)编写程序,语句是计算

android apk反编译(反编译—改代码—再编译—签名)

1.工具(请到网站搜索并自行下载): ①apktool(反编译:能得到图片资源与布局文件等) ②dex2jar(反编译:能得到activity等java代码) ③jd-gui(查看dex2jar得到的java文件) ④手机签名工具(签名) 2.步骤: ①apktool反编译 (1)将apktool.bat aapt.exe  apktool.jar与要反编译的apk文件放到同一目录下 (2)运行cmd并切换到apktool所在的路径 (3)输入:apktool d a.apk test (格式:

Android对apk源代码的改动--反编译+源代码改动+又一次打包+签名【附HelloWorld的改动实例】

最近遇到了须要改动apk源代码的问题,于是上网查了下相关资料.编写了HelloWorld进行改动看看可行性,经过实验证明此方案可行,而且后来也成功用这种方法对目标apk进行了改动,仅仅只是须要改动的部分比HelloWorld复杂些,可是仅仅要了解下smali也能进行相关的改动,以下讲下详细的步骤,文中所用到的资源会在文章的结尾给出,感兴趣的能够下载试试. 首先介绍下要用到的工具: jdk:这个不用多说了 baksmali:把classes.dex转为为smali文件的工具 dex2jar:cla

APK中java代码反编译

Android APK中的Java代码可以被反编译到什么程度主要看APK的加密程度. 第一种情况:无混淆无加密无加壳.直接利用Dex2jar和JD-GUI可把源码从APK里抠出来,代码逻辑清晰,基本上做到可复用,只是资源文件的引用需要计算一下. 第二种情况:混淆.通常是利用Proguard做的防护.因为是对jar做的不可逆混淆(除非有mapping),因此不能还原成原来的代码.但是代码结构,代码逻辑一致,只要花长时间对代码进行梳理一样可找准核心代码,解密方法跟第一种一致. 第三种情况:加密.这里

Android APK文件的逆向反编译

APK是Android Package的缩写,即Android安装包(APK).APK是类似Symbian Sis或Sisx的文件格式.通过将APK文件直接传到Android模拟器或Android手机中执行即可安装.APK文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk. APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的简称,即Android Dalvik执行程序,