首页 > 解决方案 > 如何计算 Kotlin 中最近一次登录和 180 天会话到期日期的剩余天数?

问题描述

我需要显示最后一次用户登录剩下的天数和会话到期日期,持续 6 个月。
我有一个带有倒计时“还剩 N 天”的 TextView。
假设今天执行了最后一次登录,我怎样才能动态获得倒计时?

标签: androidkotlin

解决方案


// Constant for easy modifying
val EXPIRATION_DAYS = 180

// Get current date
val calendar = GregorianCalendar.getInstance()
calendar.time = Date()
val currentDate = cal.time

// Adding to current date needed amount of days
cal.add(Calendar.DAY_OF_YEAR, EXPIRATION_DAYS)

// Get modified date
val after180DaysDate = cal.time

// Calculating difference between dates    
val difference = after180DaysDate.time - currentDate.time

// Converting milliseconds to days
val convertedDifference = (difference / (60 * 60 * 24 * 1000))

Log.e("TAG", "$convertedDifference of days left")

希望这可以帮助。


推荐阅读