Ответ 1
В стандартном java-мире:
При компиляции стандартного Java-кода: компилятор производит *.class файл. Файл класса * содержит стандартный java-байт-код, который может быть выполнен на стандартной JVM.
В мире Android:
Это другое. Вы используете язык java для написания кода, но компилятор не создает файлы *.class, он создает файл *.dex. Файл *.dex
содержит байт-код, который может быть выполнен на виртуальной машине Android (dalvik), и это не стандартная виртуальная машина Java.
Чтобы быть ясным: файл dex в android является эквивалентом класса в стандартном java.
So dexoptions
- это объект gradle, где определены некоторые параметры для настройки преобразования java-кода в Android-байт-код, Параметры, сконфигурированные с помощью этого объекта:
- targetAPILevel
- force-jumbo mode (при включении он позволяет большее количество строк в файлах dex)
Чтобы включить jumboMode
:
android {
dexOptions {
jumboMode = true
}
}