`
dss16694
  • 浏览: 144477 次
社区版块
存档分类
最新评论

反编译和回编译framework.jar

 
阅读更多

最近对android 2.3.3framework.jar进行了一些反编译和回编译的操作,写下来备忘。

 

一、framework.jar反编译为smali文件

 

1、下载smali-1.2.6.jarbaksmali-1.2.6.jar这两个工具(下载地址:http://code.google.com/p/smali/downloads/list

 

2、将framework.jar中的classes.dex解压出来(好像不解压,直接用framework.jar也行)

 

3、使用baksmali.jarclasses.dex进行反编译(前提是安装了jdk,并且设置好了环境变量),执行命令:

 

java -jar baksmali-1.2.6.jar classes.dex -o out/

 

其中classes.dex是要反编译的文件,out/是要把反编译后的文件存放到的文件夹,如果不是在当前目录下,那么baksmali-1.2.6.jar还要加上路径

 

这样就OK了,在out文件夹中可以看到一堆扩展名为.smali的文件,用记事本就可以打开它们,从中可以窥到一些信息。但是与.java文件还是有一些不同,我也不太清楚这是什么结构。

 

二、smali文件回编译为classes.dex

 

1、一条命令就OK了:java -jar smali-1.2.6.jar out/ -o classes.dex

 

2、再把编译好的classes.dex放回到framework.jar中就行了(可以使用winrarwinzip之类的工具作为辅助)。

 

三、framework.jar反编译为.class.java文件

 

1、下载以下工具:

 

1dex2jarhttp://code.google.com/p/dex2jar/

 

2xjadhttp://www.skycn.com/soft/41898.html)或jd-guihttp://java.decompiler.free.fr/?q=jdgui

 

2、使用dex2jarframework.jar进行转换,执行命令:dex2jar.bat framework.jar   将会生成一个framework.jar.dex2jar.jar

 

3、直接对该jar文件解压,可以看到里面都是.class文件了

 

4、如果还需要转换成.java文件,可以使用xjadjd-gui,均可将class文件变为java文件。

 

注:dex2jar工具也可以处理.dex文件,因此也可以不直接处理framework.jar。而是先将framework.jar解压,生成classes.dex后再处理也行。

 

分享到:
评论

相关推荐

    反编译工具,可以将android生成的framework.jar反编译为class,并且用jd-gui 查看修改是否编译进来

    反编译工具,可以将android生成的framework.jar反编译为class,并且用jd-gui 查看修改是否编译进来

    jar包反编译工具

    jar包反编译工具 很实用! 功能特点: 1、XJad是基于Jad核心的Java源程序反编译软件,内置Jad1.5.8e2; 2、可处理多个*.class文件,可以处理文件夹内的所有文件,甚至可以处理*.jar文件; 3、带有多页面文本编辑器,...

    反编译Jar包生成源码文件

    1、打开一个或者多个*.class文件,XJad反...3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中;

    Android APK+Dex文件反编译及回编译工具 v.1.7.2 正式版

    《APK+Dex文件反编译及回编译工具》 简称:APKDB 是一款,针对Android OS系统的APK程序,直接反编译修改的工具。 APKDB集合了当今最强悍,最犀利的APK及Dex文件编译工具; 正常安装后,它直接在【鼠标右键】创建...

    android反编译工具

    1、反编译.apk  对.apk文件进行反编译。  2、重建.apk  根据反编译.apk得到目录重建.apk文件。  3、签名.apk  对.apk文件进行签名。  4、优化.apk  对.apk文件进行优化。  5、framework-res.apk工具  实现...

    smali-2.0.3.jar baksmali-2.0.3.jar

    把下载好的smali-2.0.3.jar 和baksmali-2.0.3.jar ,还有rom里面抠出来的5个jar,放到工作目录,然后apk和odex也放到一起。 2. 分解odex文件为class文件。 将smali-2.0.3.jar 和baksmali-2.0.3.jar放在d:\...

    APK 反编译工具 APK Easy Tool 1.59.2 中文.zip

    只需右键单击 APK 文件并选择以下选项,即可执行操作,反编译或编译 APK,DEX 和 JAR 文件,Zipalign APK,检查对齐,签名 APK 和安装 APK。 要求: -Windows 7 或以上 -.NET Framework 4.7.2 或更高版本 -Java 8 ...

    java class文件反编译

    功能特点: ======== ...3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中;

    APK 反编译工具 ApkToolkit v3.0 绿色中文版.zip

    这款APK反编译工具(ApkToolkit)拥有编译、反编译、签名等功能,对于经常DIY安卓软件的朋友来说,是必不可少的工具。能够支持WIN7系统,但是这款安卓apk反编译工具暂不支持WIN8系统。 APK 反编译工具 ApkToolkit ...

    java反编译工具XJad.rar

    1、打开一个或者多个*.class文件,XJad反...3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中;

    XJad2.2_反编译JAVA

    3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” JAVA工具,反编译JAVA JAR包 反编译class文件 反编译工具 jd-...

    java反编译工具(XJad) 2.2 中文绿色版

    一个可以将.class文件反编译回.java的工具,java反编译工具:XJad2.2,可打开.class 电脑端用,java jar模拟器:KEmulator 功能特点: ======== 1、XJad是基于Jad核心的Java源程序反编译软件,内置Jad1.5.8e2; 2...

    java反编译工具

    功能特点: 1、XJad是基于Jad核心的Java源...3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中;

    XJad_Java源程序反编译软件

    3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中; 4、在*.class、*.java、*.jar文件和目录上...

    xjad java反编译工具

    3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译, 并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中; 功能改进: ======== 1、发现Jad1.5.8g在...

    java反编译

    java反编译工具(jd-gui)是一款非常出色的电脑...3、打开一个*.jar文件,XJad将该Jar文件中的所有*.class文件解压缩到临时目录并进行反编译,并将源文件带包路径信息保存至当前文件夹下名称为“~” + *.jar 的文件夹中;

    Java源代码反编译工具

    2、反编译文件夹:在软件中选择反编译文件夹或右键点击文件夹选择反编译,XJad将该文件夹下所有*.class文件进行反编译,并保存至该文件夹下,依据包路径信息生成文件夹路径,如com.spring.framework.*,将建立...

    java反编译程序.rar

     2、反编译文件夹:在软件中选择反编译文件夹或右键点击文件夹选择反编译,XJad将该文件夹下所有*.class文件进行反编译,并保存至该文件夹下,依据包路径信息生成文件夹路径,如com.spring.framework.*,将建立...

Global site tag (gtag.js) - Google Analytics