ODEX 旧城等待, 2022-08-21 12:50 11阅读 0赞 ODEX是安卓上的应用程序apk中提取出来的可运行文件,即将APK中的classes.dex文件通过dex优化过程将其优化生成一个·dex文件单独存放,原APK中的classes.dex文件会保留的。 中文名 ODEX 类 型 可运行文件 说 明 [安卓][Link 1]上的 [应用程序][Link 2] [apk][] 功 能 加快 [软件][Link 3]的 [启动速度][Link 4] ## 目录 ## 1. 1 [定义][Link 5] 2. 2 [作用][Link 6] 3. 3 [效果][Link 7] 4. 4 [优点][Link 8] 5. 5 [缺点][Link 9] ## 定义 ## 编辑 这样做可以加快软件的 [启动速度][Link 4],预先提取,减少对 [RAM][]的占用,因为没有 [odex][]的话,系统要从 [apk][]包中提取dex再运行。 ## 作用 ## 编辑 所谓 [Odex][odex],是由 [android][]软件中的classes.dex生成的, [Odex][odex]化即是把那个文件预先提取出来作用是能加快软件加载速度和开机速度。不过 [Odex][odex]也有缺点,那就是有时候加刷东西会出现问题。 简单说,原本系统恢复出厂设置后第一次开机需要先提取classes.dex出来,而Odex化就是现在你提前把它提取出来了。系统启动或者程序运行加快的原因也就在此。并且将dex变为odex还可以节省空间,因为提取后可以把apk内的dex删除。如果不odex,那么系统还是会自动提取 [dex][],这时不仅apk内有dex,/data/dalvik-cache目录下也有dex,虽然apk内的dex经过压缩了,但是两份dex的总体积已经大于一份odex的体积了。 ## 效果 ## 编辑 [Odex][odex]化后系统启动和程序运行速度大大提高,稳定性不变。因此推荐做Odex化。 一般来说官方 [rom][]都是odex化的rom(含Odex文件),而定制rom大部分都是deodex化的(无odex文件)。两者应该各有优点吧,貌似现在也没有统一的说法。官方rom大部分每个 [apk][]对应一个.odex文件,而deodex化的rom里面只有一个apk,把.odex转换成classes.dex放到apk包里面了。所以 odex rom的.apk+.odex=deodex化rom的1个.apk (简单地来说,其实就上一个合并的过程) ## 优点 ## 编辑 1.刷完机首次进入系统的时间会缩短一些。文件的运行速度应该也有所提升。 2.APK文件不能单独安装,并且如果反编译APK文件,一般也只能得到资源文件。可以说是起到一定的保护作用,避免被肆意修改和使用。这样做可以使其厂商保证一定的反盗版,因为没有 [dex][]文件的 [apk][]是无法正常安装的。 3.会增加一些可安装应用的空间,虽然不是很多。 4.某些机身内存太小的手机优化的时候可以删除dex文件来达到制作大内存包的目的,但是这种大内存包会使手机软件启动速度变慢。适合不追求速度,需要更多内存装软件的用户。 ## 缺点 ## 编辑 1.不方便修改ROM以及文件本身。 2.增加ROM包的体积,虽然不是很多。 3.当你升级某个被 [Odex][odex]的应用后,这个应用将会出现故障,最常见的就是FC(在 [android系统][android 1]里,运行程序的时候弹出一个对话框,强制关闭)。 [Link 1]: http://baike.baidu.com/view/3091265.htm [Link 2]: http://baike.baidu.com/view/330120.htm [apk]: http://baike.baidu.com/view/1351499.htm [Link 3]: http://baike.baidu.com/view/37.htm [Link 4]: http://baike.baidu.com/view/2053679.htm [Link 5]: http://baike.baidu.com/link?url=J6Q604AgYMZaCo629PBuNvZj0XLcGpEnSajPYCJN0fPj8aN8izrTVdiwvAPbMwEtgA_xdrGfuiIAOelTxlqLJ_#1 [Link 6]: http://baike.baidu.com/link?url=J6Q604AgYMZaCo629PBuNvZj0XLcGpEnSajPYCJN0fPj8aN8izrTVdiwvAPbMwEtgA_xdrGfuiIAOelTxlqLJ_#2 [Link 7]: http://baike.baidu.com/link?url=J6Q604AgYMZaCo629PBuNvZj0XLcGpEnSajPYCJN0fPj8aN8izrTVdiwvAPbMwEtgA_xdrGfuiIAOelTxlqLJ_#3 [Link 8]: http://baike.baidu.com/link?url=J6Q604AgYMZaCo629PBuNvZj0XLcGpEnSajPYCJN0fPj8aN8izrTVdiwvAPbMwEtgA_xdrGfuiIAOelTxlqLJ_#4 [Link 9]: http://baike.baidu.com/link?url=J6Q604AgYMZaCo629PBuNvZj0XLcGpEnSajPYCJN0fPj8aN8izrTVdiwvAPbMwEtgA_xdrGfuiIAOelTxlqLJ_#5 [RAM]: http://baike.baidu.com/view/3558.htm [odex]: http://baike.baidu.com/view/7784265.htm [android]: http://baike.baidu.com/view/1241829.htm [dex]: http://baike.baidu.com/view/1704985.htm [rom]: http://baike.baidu.com/subview/15546/11756848.htm [android 1]: http://baike.baidu.com/view/4971681.htm
相关 Android 编译不生成odex文件(编译时不优化) LOCAL_DEX_PREOPT := false Android.mk中添加配置: LOCAL_DEX_PREOPT := false 如果是 Android.bp android_app { ... 骑猪看日落/ 2024年04月18日 22:15/ 0 赞/ 46 阅读
相关 ODEX ODEX是安卓上的应用程序apk中提取出来的可运行文件,即将APK中的classes.dex文件通过dex优化过程将其优化生成一个·dex文件单独存放,原APK中的classe 旧城等待,/ 2022年08月21日 12:50/ 0 赞/ 12 阅读
相关 Android odex文件反编译 odex 是经过优化的dex文件,且独立存在于apk文件。odex 多用于系统预制应用或服务。通过将apk中的dex文件进行 odex,可以加载 apk 的启动速度,同时减小空 左手的ㄟ右手/ 2022年08月02日 04:50/ 0 赞/ 282 阅读
相关 Android的APK安装过程 JVM Dalvik和ART等虚拟机区别以及DEX文件ODEX文件OAT文件区别 APK APK JVM Dalvik ART区别 ART的运行原理: DEX文件 ODEX文件 OAT文件 APK安装过程 旧城等待,/ 2022年05月16日 04:27/ 0 赞/ 350 阅读
还没有评论,来说两句吧...