Используйте ThreeTen Android Backport , чтобы вывести java.time
на Android pre API 26.
Затем вы можете использовать LocalDate
для представления дня рождения без информации о часовом поясе (так как он действителен во всех часовых поясах). См. https://stackoverflow.com/a/39379431/4265739 для обзора классов времени.
Для расчета возраста с java.time
в kotlin вы можете использовать (бесстыдно адаптировано из this )
val start = LocalDate.of(1996, 2, 29)
val end = LocalDate.of(2014, 2, 28) // use for age-calculation: LocalDate.now()
val years = ChronoUnit.YEARS.between(start, end)
println(years) // 17
Чтобы узнать, как установить, следуйте инструкциям в репозитории github и посмотрите Как использовать ThreeTenABP в Android Project , если у вас возникли проблемы.