Kotlin 是不是 100% 兼容 Android 上的 ART?

Posted

技术标签:

【中文标题】Kotlin 是不是 100% 兼容 Android 上的 ART?【英文标题】:Is Kotlin 100% compatible with ART on Android?Kotlin 是否 100% 兼容 Android 上的 ART? 【发布时间】:2015-02-23 21:35:53 【问题描述】:

ART 是 android 上的“新”Dalvik 运行时,自 Android 5.0 起已取代它。我非常热衷于在 JVM v8 上运行的 Kotlin 和 JavaFX。我不确定 Kotlin 编译器在达到 v1.0 发布状态后生成或将生成的字节码版本。

所以问题是:ART 现在是否能够运行“Kotlin 代码”,将来是否能够运行 Kotlin 代码,例如Kotlin 编译器何时会发出 Java8 字节码?还是 ART 不依赖 Kotlin 编译器发出的字节码?

【问题讨论】:

一个小说明:ART 运行的不是 Java 字节码,而是 DEX 代码。重要的因素是 Java 字节码到 DEX 的编译步骤(很快将被 Jack & Jill 的 Java 源代码替换为 DEX)。这就是 Java 字节码版本发挥作用的地方。 @cypressious 这意味着用 Java v 我想是的。除了原生的东西,只要你有 Java v 【参考方案1】:

与 Android 的兼容性是我们的首要任务之一,因此请确保 Kotlin 在发布时支持 ART。目前 Kotlin 生产的字节码版本是 1.6,因此它是兼容的,我们将继续支持这个目标,直到大多数 Android 客户端运行更新的字节码版本。

【讨论】:

很高兴听到 Android 是 Kotlin 开发的优先事项。我个人认为 Kotlin 是 Android 开发者的“Swift”。 RoboVM.org 为 ios 提供了一个字节码编译器,所以你也可以在 iOS 上运行“Kotlin 代码”,这对我来说更重要......

以上是关于Kotlin 是不是 100% 兼容 Android 上的 ART?的主要内容,如果未能解决你的问题,请参考以下文章

Kotlin 的优点

Kotlin初识Kotlin

在 Linux 中的 Mono 下,在 Visual Studio / msbuild 中编译的二进制文件是不是 100% 兼容?

kotlin使用手记

Kotlin小笔记kotlin的基本语法

一款纯 Kotlin 编写的开源安卓应用