Java 正确理解艺术/达尔维克汇编
我想问你我是否正确理解编译过程 将Android应用程序导出到.apk文件后,我们将收到字节码(.apk) 当我们想在Android设备上启动我们的应用程序时: Dalvik: 字节码(.apk)->Dalvik VM JIT编译->编译本机代码 ->程序的执行(整个程序分配到内存中) 每次启动应用程序时都会执行Dalvik JIT编译 艺术: 安装: 字节码(.apk)->ART VM AOT编译->编译本机代码 应用程序发布: 本机代码->执行(仅部分程序分配 内存)Java 正确理解艺术/达尔维克汇编,java,android,compilation,dalvik,art-runtime,Java,Android,Compilation,Dalvik,Art Runtime,我想问你我是否正确理解编译过程 将Android应用程序导出到.apk文件后,我们将收到字节码(.apk) 当我们想在Android设备上启动我们的应用程序时: Dalvik: 字节码(.apk)->Dalvik VM JIT编译->编译本机代码 ->程序的执行(整个程序分配到内存中) 每次启动应用程序时都会执行Dalvik JIT编译 艺术: 安装: 字节码(.apk)->ART VM AOT编译->编译本机代码 应用程序发布: 本机代码->执行(仅部分程序分配 内存) AOT编译只在应用程序
AOT编译只在应用程序安装后处理一次。Dalvik JIT确实是及时的,所以它只能在代码中的“热点”上运行。否则,整个APK不会加载到内存中。除此之外,在6月25日至26日会议结束后,你可能还想观看2014年谷歌I|O艺术会议的YouTube视频。