Odex合并工具- SVADeodexerForArt V5.5(支持安卓7.0)

From XDA 更多版本与信息请前往查看

官方安卓系统本身是apk与dex分离的,但是开发者为了修改、调整一些参数,不得不去对“Framework”和“Apk”进行合并后再去修改!通常我们会使用安卓厨房(Android Kitchen)来合并,不过自从系统升级arm64后,官方已经不能进行合并处理了,不过大神开发了一款专门用来deodex的工具 - SVADeodexerForArt,这是一款Windows下电脑端对官方的Apk和Odex文件进行合并的工具,开发者值得拥有!也是ROMer的必备工具之一,做系统文件的修改和美化少不了它。

1. Download for 32-bit systems (v5.5 from 21-04-2017): SVADeodexerForArt_v5-5_32.zip

2. Download for 64-bit systems (v5.5 from 21-04-2017): SVADeodexerForArt_v5-5_64.zip


Apk和odex的介绍与合并

以下文章 《给大家科普一下安卓知识,apk和odex的介绍和合并,很有用哦》 出自 MIUI 论坛 ;排版 Me-1

APK介绍


APK是Android Package的缩写,即Android安装包。APK是类似SymbianSis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。

APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。

一个APK文件(压缩文件打开可以看到)结构为:

总结下我们发现Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别,这样做对于程序的保密性和可靠性不是很高,通过dexdump命令可以反编译,但这样做符合发展规律,微软的 Windows Gadgets或者说WPF也采用了这种构架方式。

在Android平台中dalvik vm的执行文件被打包为apk格式,最终运行时加载器会解压然后获取编译后的androidmanifest.xml文件中的permission分支相关的安全访问,但仍然存在很多安全限制,如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的。最终我们平时安装的文件可能不是这个文件夹,而在android rom中系统的apk文件默认会放入这个文件夹,它们拥有着root权限。

odex文件介绍


细心的网友可能发现Android的ROM中有很多odex文件,相对于 APK中的dex文件而言这个odex有什么作用呢?

如果你仔细观察会发现文件名时一一对应的,同时那些对应的apk文件中没有dex文件。这样做可以使其厂商保证一定的反盗版,因为没有没有dex文件的apk是无法正常安装的,而厂商直接将odex和不完整的apk文件放到手机rom固化到/system/bin中可以让一般用户无法正常导出使用。(文/Android开发网)

很多网友可能想到的是合并odex和apk变成apk中包含dex文件的,这样合并后最终apk文件安装在/data/中,而rom存放时在/system/bin中,所以最终导致了用户可装在Android手机中的软件会变少,占用系统空间。