how to make success!@hxx http://blog.sina.com.cn/s/blog_b98d87830101cua2.html
1.首先把apk文件改名为.zip,然后解压缩其中的class.dex文件,它就是java文件编译再通过dx工具打包成的。
2.把class.dex拷贝到dex2jar.bat所在目录。运行dex2jar.bat class.dex,生成classes.dex.dex2jar.jar。
-------------------------------------------------------
下载:http://code.google.com/p/dex2jar/downloads/list
方法:
1.首先找到Android软件安装包中的classes.dex (解压得到);
它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件
2.把classes.dex拷贝到dex2jar.bat所在目录;
在命令行模式下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex
,生成classes.dex.dex2jar.jar,成功了一半!
注意:这里面的jar包也都反编译成了java文件!到时候找出来删掉,然后倒入jar包!
-------------------------------------------------------
3.运行JD-GUI工具(绿色软件,好用的软件!),打开上面的jar文件,即可看到java源代码。
-------------------------------------------------------
JD-GUI
下载:http://java.decompiler.free.fr/?q=jdgui
方便好用,直接解压得到JD-GUI,用它打开上面的jar文件,File-->Save JAR Source,即可看到梦寐以求的java源代码;
-------------------------------------------------------
注意:这时候java源文件是获得了,但是如果获取zip文件解压的配置文件,会发现打开全是乱码,所以配置文件和资源文件需要用另外的方式来完成获取: A1和A2随便选一种,我下了个apktool,智能的运行即可!
-------------------------------------------------------
A1. apktool:
通常用于生成程序的源代码和图片、XML配置、语言资源等文件。我们对图片和语言资源等文件修改后,可以再把它们编译打包成APK,签名后就是手机可以安装的本地化/修正版APK了。支持Linux 、Windows下工作
安装步骤:
1.安装JAVA环境(官方推荐jdk 1.6);
2.下载apktool.jar:http://code.google.com/p/android-apktool/downloads/list
点击下载apktool1.3.2.tar.bz2 和apktool-install-windows-2.2_r01-3.tar.bz2 (不一定是这个,但最好选最新版本的吧!)
3.解压apktool1.3.2.tar.bz2得到apktool.jar;
解压apktool-install-windows.zip到任意文件夹,将apktool.jar拷入此文件夹中(也有人说是直接全部拷入C:/Windows,一样的);
(目前此文件夹中有三个文件:apktool.jar/apktool.bat/aapt.exe)
4.cmd命令行进入到解压apktool-install-windows-2.2_r01-3.tar.bz2所得的文件夹,输入apktool测试是否安装成功;
安装成功后,下面开始反编译过程:
view plaincopy to clipboardprint?
1.apktool d (要反编译的文件) (输出文件夹)
如:apktool d XXX.apk (目标文件夹) 反编译 my.apk到文件夹myapk
2.apktool b (目标文件夹)
从目标文件夹中重建APK,生成的APK在"目标文件夹"/dist文件夹里,叫out.apk。
这个out.apk是没有签名的,所以不能直接装到手机里。签名工具和方法见http://www.hiapk.com/bbs/thread-21261-1-1.html,这里就不说了。签名后得到的APK,就是可以装到手机里的了。
A2. AXMLPrinter2.jar
将它放到android-sdk-windows-1.5_r3/tools文件夹中
运行cmd,进入tools目录,运行java -jar AXMLPrinter2.jar main.xml > main.txt;
于是我们就得到了反编译后的XML文件;
经历了这么多,我们得到的只是部分布局文件和资源文件,但java文件还是"犹抱琵琶半遮面"。
1.首先把apk文件改名为.zip,然后解压缩其中的class.dex文件,它就是java文件编译再通过dx工具打包成的。
2.把class.dex拷贝到dex2jar.bat所在目录。运行dex2jar.bat class.dex,生成classes.dex.dex2jar.jar。
-------------------------------------------------------
下载:http://code.google.com/p/dex2jar/downloads/list
方法:
1.首先找到Android软件安装包中的classes.dex (解压得到);
它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件
2.把classes.dex拷贝到dex2jar.bat所在目录;
在命令行模式下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex
,生成classes.dex.dex2jar.jar,成功了一半!
注意:这里面的jar包也都反编译成了java文件!到时候找出来删掉,然后倒入jar包!
-------------------------------------------------------
3.运行JD-GUI工具(绿色软件,好用的软件!),打开上面的jar文件,即可看到java源代码。
-------------------------------------------------------
JD-GUI
下载:http://java.decompiler.free.fr/?q=jdgui
方便好用,直接解压得到JD-GUI,用它打开上面的jar文件,File-->Save JAR Source,即可看到梦寐以求的java源代码;
-------------------------------------------------------
注意:这时候java源文件是获得了,但是如果获取zip文件解压的配置文件,会发现打开全是乱码,所以配置文件和资源文件需要用另外的方式来完成获取: A1和A2随便选一种,我下了个apktool,智能的运行即可!
-------------------------------------------------------
A1. apktool:
通常用于生成程序的源代码和图片、XML配置、语言资源等文件。我们对图片和语言资源等文件修改后,可以再把它们编译打包成APK,签名后就是手机可以安装的本地化/修正版APK了。支持Linux 、Windows下工作
安装步骤:
1.安装JAVA环境(官方推荐jdk 1.6);
2.下载apktool.jar:http://code.google.com/p/android-apktool/downloads/list
点击下载apktool1.3.2.tar.bz2 和apktool-install-windows-2.2_r01-3.tar.bz2 (不一定是这个,但最好选最新版本的吧!)
3.解压apktool1.3.2.tar.bz2得到apktool.jar;
解压apktool-install-windows.zip到任意文件夹,将apktool.jar拷入此文件夹中(也有人说是直接全部拷入C:/Windows,一样的);
(目前此文件夹中有三个文件:apktool.jar/apktool.bat/aapt.exe)
4.cmd命令行进入到解压apktool-install-windows-2.2_r01-3.tar.bz2所得的文件夹,输入apktool测试是否安装成功;
安装成功后,下面开始反编译过程:
view plaincopy to clipboardprint?
1.apktool d (要反编译的文件) (输出文件夹)
如:apktool d XXX.apk (目标文件夹) 反编译 my.apk到文件夹myapk
2.apktool b (目标文件夹)
从目标文件夹中重建APK,生成的APK在"目标文件夹"/dist文件夹里,叫out.apk。
这个out.apk是没有签名的,所以不能直接装到手机里。签名工具和方法见http://www.hiapk.com/bbs/thread-21261-1-1.html,这里就不说了。签名后得到的APK,就是可以装到手机里的了。
A2. AXMLPrinter2.jar
将它放到android-sdk-windows-1.5_r3/tools文件夹中
运行cmd,进入tools目录,运行java -jar AXMLPrinter2.jar main.xml > main.txt;
于是我们就得到了反编译后的XML文件;
经历了这么多,我们得到的只是部分布局文件和资源文件,但java文件还是"犹抱琵琶半遮面"。