Я обновился до последней версии Android N sdk. Единственное, что я не понимаю, то почему я не могу импортировать java.time
в свой код? Я думал, что Java8 доступен через Android N. Тогда почему Google не добавил java.time
пакет?Android N Java8 java.time
ответ
Android N не поддерживает все возможности Java 8. Следующие функции поддерживаются только:
- По умолчанию и статические методы интерфейса
- лямбда-выражений
- повторяемые аннотаций
Отражающие и связанные с языком API:
java.lang.FunctionalInterface
java.lang.annotation.Repeatable
java.lang.reflect.Method.isDefault()
и отражение API-интерфейсов, связанных с повторяемой аннотацией, такие как AnnotatedElement.getAnnotationsByType(Class)
Utility API:
java.util.function
Для получения дополнительной информации воспользуйтесь следующей ссылкой: http://developer.android.com/preview/j8-jack.html
Спасибо за план. Я думаю, что наш единственный вариант для Java 8 Time api - https://github.com/JakeWharton/ThreeTenABP –
@Igor прямо до того, как будет выпущена стабильная версия android-n. надеюсь, что в стабильной версии они будут поддерживать –
Ну, если они еще не добавили Time api, то они, вероятно, не будут в Android N. В противном случае я понятия не имею, как Google принимает решения о включении или опускании определенных apis ... –
Существует портировать библиотека java.time
API, для Android, который может быть использован
java.time
пакет был добавлен только в API 26 (Android O):
https://developer.android.com/reference/java/time/package-summary.html
только ожидание - это вариант: jack теперь устарел, и API java8 вскоре будет поддерживаться напрямую: https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.html – ccpizza
@ccpizza Они не поддерживают все функции Java 8 для Android. –
Большая часть функциональности java.time портирована на Java 6 и 7 в проекте [* ThreeTen-Backport *] (http://www.threeten.org/threetenbp/). Дальнейшая адаптация для Android в проекте [* ThreeTenABP *] (https://stackoverflow.com/q/36000997/642706); см. [* Как использовать ... *] (https://stackoverflow.com/q/38922754/642706). –