¿Es posible usar la API de Java 8 Stream en la API de Android <24?
He leído esta publicación aquí. Pero aún así no puedo ejecutar código que contenga características de Java 8 Stream API como las siguientes en minSdkVersion <24.
List<Car> newCars = cars.stream() .filter(s -> s.getColor().equals("red")) .collect(Collectors.toList());
Esto no se ejecuta debido al mensaje de error
- Cómo obtener un error en Android Studio 2.1 con java 8
- El paquete Eclipse ADT no funciona correctamente
- Cuando los métodos predeterminados serán compatibles (Java 8) en Android?
- Infinite Gradle Build Ejecución de Java 8
- ¿Es posible utilizar Java 8 para el desarrollo de Android?
La llamada requiere el nivel 24 de la API (el min actual es 15): java.util.Collection # stream
¿Así que alguien conoce una solución?
- Android Studio Instant ejecutar no funciona con java 8 en android
- Cómo suprimir la advertencia "Se puede reemplazar con foreach"
- "Por qué Apache Harmony" o "Cómo usar Java 8 en Android"
- Casos de prueba de Android que fallan después de actualizar a Java 8 y herramientas de compilación versión 25
- ¿Puedo "usar" Java 8 con Android Development ahora?
- Cómo resolver este error VFY: no se puede resolver el método virtual
- Dagger 2, Gradle Plugins y Jack - Se requiere orientación
- No se puede refactorizar métodos con subrayado como un parámetro en lambdas?
No se pueden usar flujos Java8 en el nivel API <24.
Sin embargo, hay algunas bibliotecas que backport alguna de la funcionalidad de flujo
https://github.com/aNNiMON/Lightweight-Stream-API
https://github.com/konmik/solid
https://sourceforge.net/projects/streamsupport/ (mencionado por @sartorius en el comentario)