В каком Android API появились лямбда-выражения

«В каком Android API появились лямбда-выражения» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Лямбда-выражения появились в Android с API 24 (Android 7.0 Nougat), когда была добавлена поддержка Java 8. Однако для использования в более ранних версиях можно включить десугаринг через desugar_jdk_libs в Gradle.

Пример с лямбдой:

button.setOnClickListener { 
    // Обработка клика
}

Для поддержки в старых версиях добавьте в build.gradle:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

В Kotlin лямбды работают на всех API, так как они являются частью языка, а не платформы.