Java 8 Stream API en Android N
Según la introducción de Google , a partir de Android N, se supone que la API de Android admite flujos de Java.
Sin embargo, al usar el SDK de vista previa de Android N, no puedo usar ninguna de las API de Stream en mi proyecto (que está configurado con Android N como versión mínima, de destino y de desarrollo de SDK).
- ¿Cómo mejorar la sintaxis kotlin lambda?
- Kotlin: safe lambdas (no hay fugas de memoria)?
- Retrolambda $ Lambda no encontrado
- Unidad Método de prueba que no contiene lambda expresión Android Studio
- Android studio: las expresiones lambda no son compatibles en -source 1.7 (use -source 8 o superior para permitir expresiones lambda)
Parece que falta el paquete java.util.stream
, al igual que los métodos stream()
de todas las implementaciones de colección que he probado.
¿Las clases necesarias aún no están incluidas en la versión preliminar actual del SDK?
- Uso de expresiones lambda con interfaces no funcionales en Java
- Android y Lambda
- ¿Hay alguna manera de utilizar interfaces funcionales Java 8 en la API de Android por debajo de 24?
- Kotlin, Proguard y lambdas
- Filtra una lista de objetos en Android usando gradle-retrolambda y Lightweight-Stream-API
- Las expresiones Lambda se bloquean con IncompatibleClassChangeError en Android cuando se usa jack
- ¿Los lambdas en el compilador de lazo de Android N tienen referencias a la clase de inclusión?
- Android Jack: Lambda que viene del archivo jar necesita sus interfaces en el classpath para ser compilado, las interfaces desconocidas son java.util.function.Consumer
Todavía no está en la vista previa actual, pero ya se ha fusionado en el maestro AOSP Git. Vea aquí https://android.googlesource.com/platform/libcore/+/916b0af2ccdd1bdfc0283b1096b291c40997d05f
EDITAR:
Sólo para evitar posibles confusiones: en marzo de 2016, cuando esta pregunta fue planteada por el OP, Android N developer preview-1
fue la única compilación disponible públicamente de lo que ahora se conoce como Android 7.0 "Nougat".
De hecho, la compilación de preview-1
no incluía la API de Java 8 Stream, pero se añadió poco después (un mes más tarde) en la preview-2
del desarrollador preview-2
.
Por lo tanto, el nivel 24 de la API de Android 7.0 admite la API de Java 8 Stream ahora.
- No se pueden filtrar los activos para densidades múltiples mediante herramientas de compilación SDK 21 o posterior
- Código de ruta por sabor en Android Gradle