Определить версию Java на телефоне Android во время выполнения - PullRequest
0 голосов
/ 01 октября 2018

Есть ли способ программно из приложения Android обнаружить версию Java, поддерживаемую телефоном?

например, чтобы увидеть, может ли телефон запустить 8-битный код Java, например?

1 Ответ

0 голосов
/ 01 октября 2018

В устройстве Android нет такой вещи, как Java-версия.Когда вы компилируете код Java для сборки приложения для Android, он конвертируется в формат DEX из файла класса и запускается на виртуальной машине Dalvik или в среде выполнения Android (ART).Преобразование кода Java в формат DEX происходит во время компиляции, поэтому не требуется иметь последнюю версию Java для интерпретации файла DEX во время выполнения.

Но вы должны отметить, что все определения классов Java могут несуществуют в устройстве Android.Например, метод java.util.Base64.getDecoder() доступен начиная с JDK 1.8, и его можно использовать в Android API уровня 17 или выше.Но код с лямбда-выражением (функция JDK 1.8) также может работать на более низких уровнях API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...