2014-02-12 48 views
2

我听说过,无论正确还是错误,应用程序都必须专门针对Android Runtime编写,以便将字节码更改为给定设备上的本机机器码。这是真的?如果是这样,我该怎么做?Kitkat ART(Android Runtime)优化?

我知道类似问题已被问到,但是我发现的所有问题都与NDK有关,而事实并非如此。

+1

这是一个不同的问题,因为我问的是应用程序体系结构和设计,而不是编译中的更改。 – KG6ZVP

+1

您的问题中没有关于“应用程序架构和设计”的内容。 – CommonsWare

回答

2

考虑到最重要的变化就是编译应用程序的方式,应该没有必要为此编写应用程序。

在之前奇巧的Android版本,应用与“经典” 刚刚在时间编制方案运行,也就是说,该代码被编译,因为它运行(深入浅出)。与ART的区别在于ART使用所谓的提前汇编。这意味着您的相同代码在之前得到预编译它实际上运行在设备上。

一个非常简单但技术性比较可以找到here

我也不太担心,如果我是你,因为,除了那些愿意深入到本机代码,大多数程序员写他们对经典的应用基础架构的所有层的顶部代码;即使应该运行时/编译/等改变,这应该不会影响顶级代码的写入方式。那些愿意潜入本地代码的人也可以在后KitKat时代这样做。