1

谁能告诉我为什么只在安装时执行 AOT 编译。为什么我们不能在桌面上提前编译并将应用程序安装在 adnroid 设备上?

4

1 回答 1

3

Android 支持的 CPU 架构有很多。ARM、x86 和 MIPS 是三大系列,但也有子集(例如,ARMv5 与 ARMv7),未来可能会有其他支持 Android 的 CPU。最好的二进制代码非常依赖于 CPU 架构。在编译时完成所有这些意味着:

  • 一个更大的 APK 文件,包含每个可能的架构,或者

  • 大量 APK 文件,每个架构一个,导致分发令人头疼(尤其是在 Play 商店之外)

通过在安装时执行 AOT,就像 ART 显然正在做的那样,我们消除了这些限制,但仍然可以获得最佳代码。

于 2013-12-07T17:32:07.207 回答