Android API 21: анализ продолжительности ISO8601 - PullRequest
0 голосов
/ 27 сентября 2018

Я пытаюсь показать длительность на экране, которую я получаю от API в формате ISO8601, формат выглядит следующим образом: PT # H # M # S.Я нашел это решение:

Duration duration = Duration.parse(durationString);

Но для этого требуется API-уровень 26, а мой минимум - 21.

Есть ли другой способ?

1 Ответ

0 голосов
/ 28 сентября 2018

Вы нашли хорошее решение.И хорошая новость в том, что вам не нужно отказываться от этого, даже если вы программируете для уровня API 21. Я предлагаю вам добавить библиотеку ThreeTenABP в ваш проект.И убедитесь, что вы импортируете org.threeten.bp.Duration, а не версию из java.time.Тогда все будет в порядке.

ThreeTenABP - это Android-версия ThreeTen Backport, которая, в свою очередь, является бэкпортом java.time, современного Java-API даты и времени, который включает класс Duration, для Java 6.и 7. Бэкпорт создан теми же людьми, которые разработали java.time и, как сообщается, надежны.

Мне однажды сказали, что зависимости для ThreeTenABP (я не тестировал):

compile group: 'org.threeten', name: 'threetenbp', version: '1.3.3', classifier: 'no-tzdb'

Ссылки

...