Подтвердить что ты не робот

Не может разрешить ошибку "java.time.LocalDate" в андроид-студии

Я пытаюсь использовать java.time.LocalDate в своем приложении для Android, однако, если я попытаюсь его импортировать, тогда любой класс из java.time дает возможность не разрешать ошибку символа в Android-студии 1.1

Единственная причина, по которой я могу это понять, это то, что она не поддерживает java 8. Это действительно так?

4b9b3361

Ответ 1

Уровень API Android 26

Уровень API Android 26 получил реализацию java.time, включая ваш класс LocalDate.

Более ранняя версия Android

Для Android & lt; 26 есть альтернатива:

  • ThreeTen-Backport является резервным портом большей части функциональности java.time для Java 6 & 7.
    • ThreeTenABP адаптирует ThreeTen-Backport для Android.
  • Joda-Time обычно используется в проектах Android. Joda-Time вдохновил пакет java.time в Java 8, но они не являются заменой. Команда Joda-Time советует перейти на java.time.

О java.time

Среда java.time встроена в Java 8 и более поздние версии. Эти классы вытесняют проблемные старые устаревшие классы даты и времени, такие как java.util.Date, Calendar и & SimpleDateFormat.

Проект Joda-Time, который теперь находится в режиме обслуживания, рекомендует выполнить переход на классы java.time.

Чтобы узнать больше, см. Учебное пособие по Oracle. И поищите в Кару множество примеров и объяснений. Спецификация: JSR 310.

Вы можете обмениваться объектами java.time напрямую с вашей базой данных. Используйте драйвер JDBC, совместимый с JDBC 4.2 или более поздней версией. Нет необходимости в строках, нет необходимости в классах java.sql.*.

Где взять классы java.time?

  • Java SE 8, Java SE 9, Java SE 10 и более поздние версии
    • Встроенный.
    • Часть стандартного Java API со встроенной реализацией.
    • Java 9 добавляет некоторые мелкие функции и исправления.
  • Java SE 6 и Java SE 7
    • Большая часть функциональности java.time перенесена на Java 6 & 7 в ThreeTen-Backport.
  • Android
    • Более поздние версии Android связывают реализации классов java.time.
    • Для более ранних версий Android (& lt; 26) проект ThreeTenABP адаптирует ThreeTen-Backport (упомянуто выше). Смотрите Как использовать ThreeTenABP....

Ответ 2

Да, Android не поддерживает Java-8. И о новом API-интерфейсе даты/времени, содержащемся в Java-8, вы можете посмотреть эту проблему:

http://code.google.com/p/android/issues/detail?id=62192

В настоящее время нет планов по внедрению JSR-310 (java.time-package) в Google Android.

Ответ 3

Наконец, API-интерфейс даты/времени, содержащийся в Java 8, добавлен в недавно обновленный Android-интерфейс API.

API DateTimeFormatter 26