支持jvmTarget 1.8的Android版本是什么?

时间:2019-05-08 21:26:58

标签: android jvm

要解决Android应用程序中的兼容性问题,我刚刚在build.gradle文件中将JVM和kotlin-stdlib-jdk的目标版本从7更改为8

android {
    ......
    kotlinOptions {
        jvmTarget = '1.8'
    }
}

dependencies {
   ....
   implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
   ....
}

现在,我的项目已编译为JVM 8,我问自己一个问题,即该JVM 8支持的最低Android Api数量。我想在更改之后,某些旧设备无法执行我的应用。

我的最低Android API是21。我在模拟器上运行了我的应用,看来还可以。

有人可以告诉我此版本中的所有设备是否都支持JVM 8,或者通过此简单更改,我以后可以介绍很多惊喜。

1 个答案:

答案 0 :(得分:1)

自Android API 19起,它可以支持JVM 8,但不能完全支持(对于SDK 19)。
您的电脑应已安装Android Studio 3+和JDK 8进行编译。
您的android设备与Java版本无关,它将支持其android API支持的功能。
但是您需要注意,Android API并不支持JDK 8所支持的全部功能,即使对于某些半现代的API(如25)也是如此!
例如:JDK 8支持某些密码填充和哈希,而Android API 25不支持。

因此,在您的情况下,您应该检查哪些Android API 21不支持JDK 8甚至7不支持。