首页 > 解决方案 > Android Kotlin 比较两个长日期

问题描述

我有两个长日期:一个来自房间数据库,一个来自当前系统时间。我正在尝试比较这两个日期,如果它们相隔超过 24 小时,我想初始化一些逻辑。

我正在使用 kotlin,并且我的应用程序针对 api 23,因此 API O 及更高版本的较新日期时间库目前没有用。

如果有人可以帮助逻辑,将不胜感激。

val currentTime = System.currentTimeMillis()
    val lastUpdated = dateUtil.convertServerStringDateToLong(coolDown?.lastUpdated!!)
    val timeSinceLastUpdate = currentTime.minus(lastUpdated)
    return currentTime.minus(timeSinceLastUpdate) > TimeUnit.DAYS.toMillis(1)

标签: androidkotlin

解决方案


问题在于以下行:

return currentTime.minus(timeSinceLastUpdate) > TimeUnit.DAYS.toMillis(1)

它应该是

return timeSinceLastUpdate > TimeUnit.DAYS.toMillis(1)

因为您想检查自上次更新以来的时间是否超过24数小时。


推荐阅读