Android поддерживает JDK 6 или 7
Я новичок в разработке Android. Могу ли я использовать свой существующий код Java, разработанный с использованием JDK 7 в Android?
Функции используют xerces dom и xslt и xpathapi. В настоящее время, когда я установил Android Eclipse ADT среду, эти функции не компилируются. Я также хотел бы знать, поддерживает ли само устройство Android JRE 6 или 7?
4 ответа
Изначально инструменты разработки Android поддерживали только функции jdk 6. Но это было изменено, сначала Android Studio 0.3.2 в октябре 2013 года см.: http://tools.android.com/recent/androidstudio032released
Поддержка таких языковых функций, как оператор diamond, multi-catch, try-with-resources, строки в переключателях и т. Д. При создании нового проекта вы можете указать уровень исходного языка: Обратите внимание, что вы можете использовать все эти языковые функции не только для Android KitKat, но и для более старых версий Android! Есть одно исключение: try-with-resources, для которого потребуется minSdkVersion 19. Поэтому Studio будет отмечать любое использование в вашем коде try-with-resources, если minSdkVersion меньше 19:
затем плагином ADT 22.6 в марте 2014 года, см.: http://developer.android.com/tools/sdk/eclipse-adt.html
Добавлена поддержка таких функций языка Java 7, как multi-catch, try-with-resources и оператор diamond. Эти функции требуют версии 19 или выше инструментов сборки. Try-with-resources требует minSdkVersion 19; остальные новые языковые функции требуют minSdkVersion 8 или выше. Чтобы использовать новые языковые функции после установки ADT 22.6.0, убедитесь, что вы запускаете Eclipse на JDK 7 и изменяете настройки проекта приложения для использования JDK 7.
Android не на 100% совместим с любой версией Java SE API, ни с 6, ни с 8, ни с какой-либо другой. это было причиной судебного дела Oracle против Google, обвиняющего Google во фрагментации Java. Некоторые API невозможно реализовать на Android как Swing; Представьте себе окно с кнопкой закрытия на Android! Другие были отложены, но реализованы: например, класс Charset находится в Java SE 1.4, но реализован в Android API 9, AutoClosable в Java 7 реализован в Android API уровня 19, чтобы позволить реализацию функции пробного использования ресурсов. Некоторые API существуют, но для разных целей, например, для консоли.
Во-первых, между Java JDK и JRE есть разница. JRE - это среда выполнения Java, а JDK - это комплект разработки Java. Это JDK, который вам нужен для разработки приложений Android вместе с существующим Android SDK.
Android SDK может использовать JDK 6 или 7, однако он может использовать только API JDK 6.
Да, JDK 7 теперь поддерживает Android Начиная с инструментов сборки 19
JDK 5/6 ТОЛЬКО. На самом деле andriod не полностью поддерживает jdk 6, потому что android jdk 6 не является Oracle JDK 6.