合并apk和odex

合并apk和odex文件


本人在ubuntu10.04环境下安装java1.6版本。

   
   需要的工具:                     
 
 1.  smali-1.4.2.jar   和   baksmali-1.4.2.jar,这两个百度一搜就有了


 2.  还需要这个apk所在的rom里面的一些jar文件,
 
      都在/system/framework里面:core.jar, ext. jar, framework. jar, android.policy. jar, services. Jar。
 
      当然,这五个是最基本的,有可能还不够,这种情况下面会讲到。
 
      总共分四步:
 
 1.  把下载好的smali-1.2.2.jar 和baksmali-1.2.2.jar ,还有rom里面抠出来的5个jar,放到工作目录,然后apk和odex也放到一起。
 
 2.  分解odex文件为class文件。
 
      将smali-1.2.2.jar 和baksmali-1.2.2.jar放在d:\odex文件夹下
   
      命令:键入 d:回车 键入cd odex 回车   


      java -jar baksmali-1.2.2.jar -x a.odex     \\a.odex喂odex文件的文件名在键入命令前务必正确安装JDK和配置环境变量
 
      <a.odex>处是你要分解的odex文件的名字,命令完成之后,会生成一个out文件夹,里面就是所有的class文件。如果出现问题,


      比如什么异常,缺少包什么的,就更到rom里面把出错信息里面要求的包拿出来,放到当前目录下。
 
3.   将class生成为classes.dex文件。
 
      命令:java -Xmx512M -jar smali-1.2.2.jar out -o classes.dex
 
4.   把classes.dex放入apk里面。
 
     最后这一步最简单了,用解压缩软件打开apk,然后把千辛万苦生成的classes.dex塞进去,就ok了。


     这个apk就能用了。如果想给他重新签个名的话,去找个Auto Sign签名工具签署一下就行。(但apk为系统文件是不必重新签名的!)


     这样apk和odex就合拼啦

你可能感兴趣的:(合并apk和odex)