如Google所述,ART运行时(AOT)应用程序将以燕麦格式/完全以本机代码进行编译。
经检查的Nexus 6P设备和系统应用程序具有oat文件夹,但内部odex文件存在。我期待与boot.oat类似的燕麦文件
据我所知,odex只是使用dexopt工具在达尔维克时代就使用的优化dex。
安装过程中ART应该使用dex2oat,然后为什么要存储odex文件。
有人可以提供有关此行为的解释吗?
谢谢,
维奈
最佳答案
这些文件是燕麦文件,与文件扩展名无关。一种简单的检查方法是查看文件的前几个字节。 odex文件应具有"dey\n035\0"
(64 65 0x79 0a 30 33 35 00
),而燕麦文件是elf文件,因此它们应具有7F 45 4C 46
的elf magic值