現在使用されている Android ランタイムのバージョンを確認する必要はありますか? たとえば、Android v4.4 では、dalvik とアートの間をスワイプできます。実行時にこの情報を見つけたいと考えています。
10倍。
現在使用されている Android ランタイムのバージョンを確認する必要はありますか? たとえば、Android v4.4 では、dalvik とアートの間をスワイプできます。実行時にこの情報を見つけたいと考えています。
10倍。
System.getProperty("java.vm.version")
- システムで ART が使用されている場合、返される値は「2.0.0」以上のいずれかになります。つまり、2 未満のメジャー バージョンは Dalvik になります。この洞察の一部は、Android ランタイムでのアプリの動作を検証するためのベスト プラクティスのガベージ コレクション (GC) の問題への対処
セクションから得られます。
// 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.");
}