Официальное объявление о Java 8 для Android N Предварительный просмотр говорит следующее:
Благодаря компилятору Jack для Android теперь вы можете использовать многие популярные функции языка Java 8, включая лямбда-выражения и многое другое, в версиях Android, начиная с Gingerbread. (…) Некоторые функции языка Java 8 , такие как стандартные и статические методы, потоки и функциональные интерфейсы , также теперь доступны на N и более поздних версиях.
Я использую следующую конфигурацию gradle с minSdkVersion 15
, чтобы попробовать Java 8 в небольшом проекте:
android {
compileSdkVersion 'android-N'
buildToolsVersion '24.0.0 rc1'
defaultConfig {
applicationId "org.sergiiz.thermometer"
minSdkVersion 15
targetSdkVersion 'N'
versionCode 1
versionName "1.0"
jackOptions{
enabled true
}
}
compileOptions {
targetCompatibility 1.8
sourceCompatibility 1.8
}
//...
}
Но селектор цели развертывания показывает minSdk(API23, N preview)
. Это ожидаемое поведение?
Есть ли список функций/пакетов Java 8, доступных еще в Gingerbread, и знаете ли вы, какие настройки gradle или библиотеки поддержки необходимы для использования функций Java 8 в API‹23?