在运行时检测Android手机上的java版本

zai*_*run 6 java android java-8

是否可以通过Android应用程序以编程方式检测手机支持的Java版本?

即查看手机是否可以运行java 8字节码?

Nab*_*ari 9

在Android设备中没有称为Java版本的东西.当您编译Java代码以构建Android应用程序时,它将从类文件转换为DEX格式,并在Dalvik虚拟机或Android运行时(ART)中运行.Java代码到DEX格式的转换发生在编译时,因此不需要使用最新的Java来解释运行时中的DEX文件.

但是你需要注意的是,Java设备中可能不存在Java的所有类定义.例如,该方法java.util.Base64.getDecoder()从JDK 1.8开始可用,并且可以在android API级别17或更高级别使用.但是具有lambda表达式的代码(JDK 1.8特性)也可以在较低的API级别运行.

  • 好详细。 (2认同)