Поддерживает ли Android Studio 3 поддержку Java 9 для Android? Если да, то какие функции Java 9 поддерживаются?
Я собираюсь установить Android Studio 3 для разработки приложения для Android.
Я хотел бы узнать, можно ли использовать Java 9 для разработки Android? Если да, поддерживает ли он все функции Java 9?
Ответы
Ответ 1
Насколько я знаю, сама IDE поддерживает Java 9. Это означает, что вы можете написать настольную программу на Java 9 или запустить IDE с JDK 9.
Однако сам Android не поддерживает Java 9 (пока). Вы все еще можете загрузить JDK 9, хотя я видел некоторые вопросы о проблемах, связанных с Android Studio и Java 9. Лично у меня есть Java 9, и Android Studio работает без проблем.
Android SDK - это набор разработчика, с которым вы будете иметь дело, и с совместимостью с исходным кодом вы получите языковые функции, аналогичные Java 6, 7 или 8, в зависимости от ваших настроек. Таким образом, вы можете скачать JDK 9 и использовать его, скорее всего, без проблем, но вы не можете использовать какие-либо языковые функции в любых приложениях Android.
Что касается различий между JDK и Android SDK, вы должны прочитать это. В настоящее время Android поддерживает подмножество функций Java 8, но не все. Он может никогда не поддерживать все или исключать некоторые части Java 8, даже если позднее он поддерживает некоторые части в Java 9 или выше.
Ответ 2
Просто попытался сделать это с Ubuntu 18.04, который уже использует Java 10. Вы сталкиваетесь с множеством проблем с недействительными сертификатами java для дополнительных предупреждений о вызовах градлы и т.д. Это беспорядок и, надеюсь, скоро будет решен, вы найдете решения каждой проблемы с помощью google, но проще установить Java 8 вместо этого.
Я не знаю, как использовать сам язык внутри кода приложения Android, потому что я полный программист NDK C++ и использую только инструментальную цепочку, содержащую много java-программ.
Ответ 3
ОБНОВЛЕНИЕ: по состоянию на https://jakewharton.com/androids-java-8-support/, похоже, что это должно уже почти работать (а также для Java 9, 10, 11 и 12). Или просто используйте Kotlin.
Чтобы помочь последним шагам, вы можете отметить проблему.
На данный момент Android SDK даже полностью не поддерживает Java 8:
Android Studio 3.0 и более поздние версии поддерживают все функции языка Java 7 и подмножество функций языка Java 8, которые зависят от версии платформы. На этой странице описываются возможности языка Java 8, которые вы можете использовать, как правильно настроить свой проект для их использования, а также любые известные проблемы, с которыми вы можете столкнуться. [подчеркивает мой]
Это, вероятно, должно быть полностью поддержано, прежде чем Java 9 приближается.