有没有找出目前使用的android运行时版本? 例如,在android v4.4上你可以在dalvik和art之间滑动,我想在运行时找到这些信息。
10倍。
答案 0 :(得分:2)
System.getProperty("java.vm.version")
- 如果系统使用ART,则返回的值将为“2.0.0”或更高,这意味着低于2的主要版本将是Dalvik。这篇见解来自 Addressing Garbage Collection (GC) Issues
部分,用于在Android运行时验证应用行为。
// catch only version 2 and not higher
// false for Dalvik, true for current ART, false for any new runtimes
boolean isArt = System.getProperty("java.vm.version").startsWith("2.");
// catch version 2 and above
// false for Dalvik, true for current ART, true for any new runtimes
boolean isArt = false;
try {
isArt = Integer.parseInt(System.getProperty("java.vm.version")
.split(".")[0]) >= 2;
} catch (NumberFormatException e) {
// we suppress the exception and fall back to checking only for current ART
isArt = System.getProperty("java.vm.version").startsWith("2.");
}