¿Android Studio 3 es compatible con Java 9 para el desarrollo de Android? Si es así, ¿qué características de Java 9 son compatibles?
android java 8 (3)
Voy a instalar Android Studio 3 para desarrollar una aplicación para Android.
¿Me gustaría saber si es posible usar Java 9 para el desarrollo de Android? Si es así, ¿es compatible con todas las características de Java 9?
A partir de ahora, el SDK de Android ni siquiera admite Java por completo :
Android Studio 3.0 y versiones posteriores son compatibles con todas las funciones de lenguaje Java 7 y un subconjunto de funciones de lenguaje Java 8 que varían según la versión de la plataforma. Esta página describe las características del lenguaje Java 8 que puede usar, cómo configurar correctamente su proyecto para usarlas y cualquier problema conocido que pueda encontrar. [énfasis mío]
Es probable que sea necesario admitirlo completamente antes de que se acerque a Java 9.
El propio IDE es compatible con Java 9 (AFAIK). Lo que significa que puede escribir un programa de escritorio Java 9 o ejecutar el IDE con JDK 9.
Sin embargo, el propio Android no es compatible con Java 9 (todavía). Aún puedes descargar JDK 9, aunque he visto algunas preguntas sobre problemas relacionados con Android Studio y Java 9. Personalmente, tengo Java 9 y corro sin problemas.
El SDK de Android es el kit de desarrollo con el que tratará, y con la compatibilidad de origen obtendrá características de lenguaje similares a Java 6, 7 u 8, según su configuración.
Por lo tanto, puede descargar JDK 9 y usarlo muy probablemente sin problemas, pero no puede usar ninguna de las funciones de idioma en ninguna aplicación de Android.
Debería leer esto sobre el tema del JDK frente al SDK de Android. Android actualmente admite un subconjunto de funciones de Java 8, pero no todo. Es posible que nunca admita todo, o que omita algunas partes de Java 8, incluso si más adelante es compatible con algunas partes de Java 9 o superior.
Solo intenté hacerlo con Ubuntu 18.04 que ya usa Java 10. Se encuentra con muchos problemas, desde certificados de Java no válidos hasta advertencias adicionales en las invocaciones de Gradle, etc. Es un desastre y, con suerte, se solucionará pronto, encontrará soluciones para cada problema a través de Google, pero es más fácil instalar Java 8 en su lugar.
No tengo idea de usar el lenguaje en sí mismo dentro del código de la aplicación de Android, porque soy un programador completo de NDK C ++ y solo uso la cadena de herramientas que contiene muchos programas java.