`

编译android源码apk是否生成odex方法

 
阅读更多

其实Android系统默认的配置是,如果没有指定DISABLE_DEXPREOPT := true(Android.mk中加入),那么user版本生成odex,其他版本不生成odex文件;
进入源码目录:build/core/main.mk中找到

 ifneq (true,$(DISABLE_DEXPREOPT))
    ifeq ($(user_variant),user)
      ifeq ($(HOST_OS),linux)
        WITH_DEXPREOPT := true
      endif
    endif
  endif

所以user版不想生成odex,那么只需要定义DISABLE_DEXPREOPT := true;

而eng版本要生成odex的话,那么只需要把WITH_DEXPREOPT := true ;

如果想单独控制某一个应用是否生成odex的话可以在这个应用的Android.mk中添加WITH_DEXPREOPT := true;

对于这个配置的逻辑可以参考
/build/core/package.mk

ifneq (true,$(WITH_DEXPREOPT))
LOCAL_DEX_PREOPT :=
else
ifeq (,$(TARGET_BUILD_APPS))
ifneq (,$(LOCAL_SRC_FILES))
ifndef LOCAL_DEX_PREOPT
LOCAL_DEX_PREOPT := true
endif
endif
endif
endif
ifeq (false,$(LOCAL_DEX_PREOPT))
LOCAL_DEX_PREOPT :=
endif

 
分享到:
评论

相关推荐

    android 反编译 逆向 vdex2dex odex2dex

    总的来说,"android 反编译 逆向 vdex2dex odex2dex"是一个涵盖Android应用逆向工程中关键步骤的主题,涉及从优化的二进制文件中恢复源代码的技巧和工具。理解这些概念和工具的使用,可以帮助开发者更好地理解...

    android源码上编译APK

    在Android源码上编译APK是一个复杂但必要的过程,特别是当你需要开发具有系统权限的应用,例如修改系统时间或实现关机功能。以下是对整个流程的详细解释: 首先,你需要编译Android源码。这通常涉及到获取源码、...

    关于android中odex与apk 的合并

    1. **反编译Apk**:使用工具如Apktool,可以将Apk文件解压为源代码和资源文件,这样就可以对Apk进行修改。 2. **获取Odex文件**:通过adb pull命令或者直接在设备上提取Odex文件,这些文件通常位于/data/dalvik-...

    apktool反编译工具

    3. **重新打包**: 反编译后,开发者可以修改源代码或资源,然后使用Apktool将修改后的文件重新打包成新的APK。 4. **签名与优化**: 改造后的APK需要重新签名才能安装到设备上。Apktool提供了签名和优化的功能,确保...

    apk分离odex

    - **反编译:** 通过分离ODEX,可以反编译应用,获取源代码,但这可能涉及到版权和法律问题。 - **安全分析:** 安全研究人员可能会分离ODEX来检查潜在的恶意代码或漏洞。 **4. APK签名与ODEX:** 当APK被签名后,...

    odex反编译及回编译教程

    本教程将详细介绍如何对`odex`文件进行反编译和回编译,以便分析和修改Android应用的源代码。 **反编译流程** 1. **提取odex文件** 首先,你需要从`system.img`或者源码编译中获取重要的`odex`文件,例如`core....

    android手机端odex化

    1. 获取源代码:如果你没有包含在Android源代码树中,你需要从GitHub或其他开源仓库下载dexopt-wrapper的源代码。 2. 编译工具:使用Android NDK或Android SDK构建系统来编译dexopt-wrapper。 3. 准备APK:将需要...

    AndroidApk反编译

    Android APK 反编译是移动应用开发领域中的一个重要概念,主要涉及对已打包的APK文件进行逆向工程,以获取其源代码、资源文件和其他敏感信息。这通常用于学习、调试、安全分析或者非法篡改应用。在本文中,我们将...

    GDA3.98不依赖java且支持反编译apk、dex、odex、oat、jar、aar、class, 支持python

    反编译引擎、漏洞检测引擎、恶意行为检测引擎、污点传播分析引擎、反混淆引擎、apk壳检测引擎等等, 尤其是恶意行为检测引擎和污点传播引擎与反编译核心的完美融合, 大大提高了无源码逆向工程的效率, 此外反编译器还...

    安卓工具用来合成apk和odex

    APK文件是通过Java源代码编译成Dalvik Executable (DEX) 文件,然后与资源文件、证书、清单文件等打包而成。这个过程中,Android SDK的构建工具如`dx`或`dexdump`起着关键作用。而`dx`命令行工具将Java字节码转换为...

    Android APK+Dex文件反编译及回编译工具v2.0.2

    · 对*.Dex 文件 反编译 及 回编译 或查看详细源代码 · 对*.Apk 文件 批量反编译 及 回编译 · 对*.Apk、*.Zip 文件执行签名 · Windows下直示Apk件自身图标 v2.0.2 正式版 2016.06.05 *.更新,ShakaApktool v...

    Email.apk和Email.odex

    同样,如果`Email.apk` 被误删除,即使`Email.odex` 存在,系统也无法识别和执行邮件应用,因为源代码已经丢失。 因此,如果用户遇到无法使用二维码照相功能的问题,并且提示缺少`Email.apk` 或 `Email.odex`,这...

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

    · 对*.Dex 文件 反编译 及 回编译 或查看详细源代码 · 对*.Apk 文件 批量反编译 及 回编译 · 对*.Apk、*.Zip 文件执行签名 · Windows下直接显示APK文件自身图标 声明:1.本工具必须先安装JAVA; 2.如需...

    反编译工具,一套从odex到java代码的完整反编译工具。

    标题中的"反编译工具"主要指的是一系列用于解析和转换这些文件的工具,让开发者或者安全研究员可以查看和理解Android应用的源代码。接下来,我们将分别介绍其中的三个关键组件: 1. **java decompiler**:这是一个...

    jadx java 反编译工具源码

    总的来说,JADX是一个强大而开源的Java反编译工具,它的源代码提供了丰富的学习资源,涵盖了字节码解析、控制流分析和源代码生成等多个方面,对于想要深入了解Java虚拟机和Android应用逆向工程的人来说,无疑是一份...

    vdexExtractor 最好用的vdex odex 反编译工具

    【vdexExtractor:Android系统中的vdex与odex反编译利器】 在Android系统中,为了提高应用程序的启动速度和运行效率,系统引入了vdex(Virtual Device Execution)和odex(Optimized Dex)文件。这些文件是Dalvik...

    Android APK+Dex文件反编译及回编译工具(APKDB)v.1.9.2 正式版

    · 对*.Dex 文件 反编译 及 回编译 或查看详细源代码 · 对*.Apk 文件 批量反编译 及 回编译 · 对*.Apk、*.Zip 文件执行签名 · Windows下直示Apk件自身图标 声明 1.本工具必须先安装JAVA7; 2.如需显示APK自身...

    Android Box反编译工具包

    反编译APK就是将APK中的DEX(Dalvik Executable)文件转换成人类可读的Java源代码,这通常需要用到如dex2jar和JD-GUI这样的工具。Android Box集成了这个过程,可以批量处理多个APK,极大地提高了工作效率。 接着,...

    Dodo APK Tools(Android程序反编译器)

    老外写的《android-apktool》软件,可以帮助我们把APK反编译,生成程序的源代码和图片、XML配置、语言资源等文件。我们对图片和语言资源等文件修改后,可以再把它们编译打包成APK 直接下了这个,解压到任意文件夹...

Global site tag (gtag.js) - Google Analytics