`
sharp2wing
  • 浏览: 271107 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

Android ROM中Odex文件的作用及介绍

阅读更多
细心的网友可能发现Android的 ROM中有很多odex文件,相对于APK中的dex文件而言这个odex有什么作用呢? Android123提示大家,如果你仔细观察会发现文件名时一一对应的,同时那些对应的apk文件中没有dex文件。这样做可以使其厂商保证一定的反盗版,因为没有没有dex文件的apk是无法正常安装的,而厂商直接将odex和不完整的apk文件放到手机rom固化到/system/bin中可以让一般用户无法正常导出使用。

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

  一、APK生成odex文件方法:

  编译开源GIT上的build/tools/dexpreopt/dexopt-wrapper这个,使用dexopt-wrapper即可,操作步骤

  将dexopt-wrapper放到/data/local目录中,使用adb shell执行linux命令行,使用cd命令进入/data/local目录,

  cd /data/local

  ./dexopt-wrapper android123.apk android123.odex

二、合并odex和 少dex的apk 为完整的apk文件

  1. 下载 http://smali.googlecode.com/files/smali-1.2.2.jar 和 http://smali.googlecode.com/files/baksmali-1.2.2.jar,既然是需要盗版,还需要odex所在rom中的一些引用类,一般在 /system/framework 目录中

  2 .  通过odex生成class文件

          java -jar baksmali-1.2.2.jar -x android123.odex

        执行完上面这行命令后,会生成一个out 文件夹里面是android123.odex的class文件。出现问题,根据提示可以从rom的 /system/framework 中的xxx.jar放到pc上的java环境变量中一起生成。

  3. 通过class生成classes.dex 文件。

        java -Xmx512M -jar smali-1.2.2.jar out -o classes.dex

  4. 将classes.dex放到apk文件

        因为apk是zip的mime编码类型,使用winzip或winrar直接拖入到apk改名为zip的压缩包中即可。

  5. 不要忘记了签名,使用jdk中的arsigner和keytool打包重新签名即可。
分享到:
评论

相关推荐

    Android 5.0 odex合并apk

    它可以帮助我们将Odex文件转换回原始的DEX格式,然后将其合并到对应的Apk文件中。这样,原本分散的Odex文件就可以被整合成单个Apk,方便管理。 使用步骤大致如下: 1. 首先,将从ROM中提取出的framework、app、...

    关于android中odex与apk 的合并

    这通常发生在自定义ROM或模块开发中,其中可能要求将Odex文件内嵌入Apk,以便于分发或简化安装过程。这个过程涉及以下步骤: 1. **反编译Apk**:使用工具如Apktool,可以将Apk文件解压为源代码和资源文件,这样就...

    ODEX文件转换成DEX文件工具

    一、APK生成odex文件方法: 编译开源GIT上的build/tools/dexpreopt/dexopt-wrapper这个,使用dexopt-wrapper即可,操作步骤 将dexopt-wrapper放到/data/local目录中,使用adb shell执行linux命令行,使用cd命令进入...

    Android安卓 系统ODEX优化代码

    Android系统中运行的程序包主要分framework,system/app,data/app,三个路径,开机的时候启动内核后,就会逐个启动framework里的jar框架程序,再启动system/app的开机自启程序。 如果你想把整个ROM都odex化,就必须先...

    odex2dex合并odex和 少dex的apk 为完整的apk文件

    一、APK生成odex文件方法: 编译开源GIT上的build/tools/dexpreopt/dexopt-wrapper这个,使用dexopt-wrapper即可,操作步骤 将dexopt-wrapper放到/data/local目录中,使用adb shell执行linux命令行,使用cd命令进入...

    一键odex批量合并工具odextools

    在Android系统中,Dalvik虚拟机执行的是DEX(Dalvik Executable)文件,而Odex文件是DEX文件经过优化后的版本,能提高应用程序的加载速度和运行效率。此工具简化了对多个Odex文件的合并过程,尤其对于开发者和ROM...

    odex合并与拆分工具.rar

    在Android系统中,`.odex`(Optimized Dalvik Executable)文件是Dalvik虚拟机执行的优化代码,它是从`.dex`(Dalvik Executable)文件经过优化处理后的产物,通常包含有编译后的字节码和一些元数据。`.odex`文件的...

    odex rom解包打包最小工具包

    odex解包打包ROM的批处理工具,无需其他程序直接用批处理即可完成odex解包打包,完成后可以直接上传手机/system替换原先的odex格式文件,当然替换这步需要机器先被root。 参见 ...

    odex生成器

    在Android系统中,Odex(Optimized Dalvik Executable)文件是Dalvik虚拟机执行的优化代码形式,它是从APK文件中的 Dex(Dalvik Executable)文件通过dex2oat工具生成的。Odex文件的主要目的是提升应用程序的启动...

    最新安卓手机端终端命令odex化

    从Android 5.0(Lollipop)开始,谷歌引入了ART(Android RunTime),它预编译了所有应用的.dex文件为.odex文件,以实现更快的启动时间和运行性能。 2. **odex化过程** Odex化过程通常包括两步: Dex2Oat 和 oat2...

    Android平台ROM的定制及精简介绍

    ### Android平台ROM的定制及精简介绍 #### Android系统文件结构概述 在深入探讨如何定制与精简Android ROM之前,我们首先需要理解Android系统的文件结构。这对于任何希望修改或优化其设备性能的人来说都是至关重要...

    一键合并ODEX工具

    该工具的主要功能是将多个ODEX文件整合到一个单一的文件中,简化了处理过程,降低了用户的操作难度。对于开发者、ROM定制者或者系统优化爱好者来说,这无疑是一种非常便捷的解决方案。它可能包含以下特性: 1. **...

    合并ODEX工具

    4. **开始合并**:点击“开始”或“合并”按钮,工具将开始处理每个ODEX文件,将其内容整合到一个单一的文件中。 5. **验证结果**:合并完成后,记得验证新生成的ODEX文件是否能够正常工作,这通常涉及到安装到一个...

    ROM工具包v1.3

    通过apktool,用户可以解包、反编译APK文件中的资源和代码,便于查看XML布局文件、图片资源、字符串资源等,并进行修改。此外,apktool还能帮助重新打包已修改的APK,使其保持原始的结构和签名,以便于安装和运行在...

    Android_ROM

    如果文件夹中有.odex文件,那么在删除APK文件的同时也需要删除与之对应的.odex文件。 #### 二、JDK6环境变量配置(Windows 7) 为了能够顺利地定制ROM,还需要确保已经正确配置了JDK环境。以下是具体的步骤: 1. ...

    Android系统文件夹结构以及ROM定制初级教程.pdf

    - `/system/app/odex`: 在某些ROM中,与APK文件同名的odex文件(优化过的DEX文件)用于提高系统性能。如果删除APK文件,对应的odex文件也需一并删除。 4. **boot.img**: 这是一个包含引导加载器、内核和恢复系统的...

    Android平台ROM的定制及精简教程

    ### Android平台ROM的定制及精简教程 #### 一、Android系统文件夹结构解析 在开始探讨如何定制和精简Android ROM之前,首先需要理解Android系统的文件夹结构。这不仅有助于我们更好地掌握如何修改ROM,还能帮助...

Global site tag (gtag.js) - Google Analytics