【问题标题】:Android Runtime and Android Native InterfaceAndroid 运行时和 Android 原生接口
【发布时间】:2015-08-28 04:39:28
【问题描述】:

根据 wiki (http://en.wikipedia.org/wiki/Android_Runtime),Dalvik 完全被 Lollipop 中的 ART 取代,即从该版本开始,任何应用程序都将在安装时编译为本机代码。这就引出了一个问题,如果应用程序无论如何都会被编译为本机代码,那么在 NDK 中编写计算密集型例程是否有意义?

【问题讨论】:

  • 检查 Lollipop 版本有用吗?

标签: android android-ndk dalvik android-runtime


【解决方案1】:

ART 并不制作 C 语言等意义上的纯“原生代码”。它仍然是从 Java 源代码生成的字节码。

所以是的,当然,用 NDK 编写一些例程还是有很多好处的 :)

【讨论】:

    【解决方案2】:

    Dalvik VM 还将代码编译为本机代码。不同之处在于,Dalvik 是“及时”完成的,而且只针对频繁执行的部分代码。

    Art 中的编译器与 Dalvik 中的编译器相比有许多性能改进,但如果您之前觉得需要使用本机来提高性能,您很可能会继续感到这种需要。

    【讨论】:

      猜你喜欢
      • 2018-12-17
      • 2018-02-08
      • 1970-01-01
      • 1970-01-01
      • 2012-02-27
      • 2018-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多