【问题标题】:Applications are compiled in odex instead of oat应用程序在 odex 中编译而不是 oat
【发布时间】:2016-03-11 11:07:12
【问题描述】:

正如 Google 提到的 ART 运行时 (AOT) 应用程序将以 oat 格式/完全以本机代码编译。

已检查 Nexus 6P 设备和系统应用程序有 oat 文件夹,但内部 odex 文件存在。我期待类似于 boot.oat 的相应 oat 文件 据我所知,odex 只是 dalvik 使用 dexopt 工具时使用的优​​化 dex。

ART 应该在安装过程中使用 dex2oat 那么为什么要存储 odex 文件。

有人可以解释一下这种行为吗?

谢谢, 维奈

【问题讨论】:

    标签: android compilation dalvik android-runtime


    【解决方案1】:

    文件 oat 文件,与文件扩展名无关。一个简单的检查方法是查看文件的前几个字节。一个odex文件应该有"dey\n035\0"64 65 0x79 0a 30 33 35 00),而oat文件是elf文件,所以它们应该有7F 45 4C 46的elf魔法值

    【讨论】:

      猜你喜欢
      • 2012-03-31
      • 1970-01-01
      • 1970-01-01
      • 2017-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-23
      • 2022-11-30
      相关资源
      最近更新 更多