您的位置:首页 > 产品设计 > UI/UE

Dex2jar JD-GUI apktool反编译apk文件

2013-09-23 07:57 344 查看
http://blog.sina.com.cn/illdvm

 

1. 下载工具

dex2jar下载地址:http://code.google.com/p/dex2jar/downloads/list

 

JD-GUI下载:http://java.decompiler.free.fr/?q=jdgui

 

apktool :https://code.google.com/p/android-apktool/downloads/list

2. 通过dex2jar将apk转换为jar文件

 
从apk中抽取classex.dex文件 
虽说dex2jar可以直接从apk抽取出jar文件,但是会经常遇到一些问题,所以常用的方法是将.apk文件,重命名为.zip,解压缩后,找到classes.dex文件
 
运行dex2jar生成.jar文件
 
cmd
cd  C:\Users\Administrator\Desktop\dex2jar-0.0.9.13
    dex2jar.bat    classes.dex

    生成 classes.dex.dex2jar.jar

dex2jar.bat 使用最新的可能需要根据提示使用另外一个命令。

 
 
3. 通过jd-gui将jar文件反编译为java文件
运行jd-gui,打开文件classes_dex2jar.jar,可以看到源码,同时,你还可以通过Save Source或Save All Source,将源码进行保存。
 
4. apktool这是把apk应用解压缩的工具,解压缩后可以看到apk文件的xml布局文件和图片等等,也就是可以看到apk的资源文件了

将下载的两个包解压到同一个文件夹下,应该会有三个文件:aapt.exe,apktool.bat,apktool.jar

在命令行下定位到apktool.bat文件夹,输入以下命令:apktool d C:\*.apk C:\*文件夹,

命令行解释:apktool   d   [apk文件 ]   [输出文件夹]
特别注意:你要反编译的文件一定要放在C盘的根目录里
 

 

 

=============================================

project.properties文件

将proguard.config前面的#去掉,就可以利用ProGuard来混淆代码了

proguard.config=${sdk.dir}/tools/proguard/proguard-android-optimize.txt:proguard-project.txt

用数字签名生成的apk才会被混淆,Run或Build Project/Build All来生成Apk,是不会混淆代码的

 

Android Tools,如下图所示,其下有两个子菜单项:“Export Signed Application Package...”和“Export Unsigned Application Package...”,一个是带RSA数字签名,一个是不带数字签名,根据需要选一个,然后按照向导操作即可,最终生成的Apk就是混淆过代码的了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 反编译 jar apk