【发布时间】:2021-06-06 10:12:24
【问题描述】:
我在 PlayStore 上有一个应用程序,我正在构建一项功能,用户在一天内看到的广告不会超过特定数量。
我正在考虑将当前日期和时间与之前保存的日期和时间进行比较,但没有找到合适的方法。
如何比较日期和时间以了解是否已过 24 小时?
我发现但没有帮助的一些帖子:
【问题讨论】:
-
第二个链接显示了一种非常简单的方法。您甚至不需要阅读第一个代码块,因为您需要处理的只是 UTC 时间作为 Long。也许你可以描述一下你被困在哪一部分。
-
当用户几天后打开应用程序时,我很困惑您所指的代码块是否有效。如果用户在 1 月 3 日下午 3:00 打开应用程序并在 1 月 6 日下午 3:00 重新打开它,那么当我比较它们时不会有时间过去。这就是我认为代码块会做的事情。我错了吗?
-
嗯,当用户调用权限时,您将运行的第一段代码,您将使用 SharedPreferences 备份它。然后,当您想查看他们的权限是否仍处于活动状态时,您可以从 SharedPreferences 中恢复保存的值,并在该代码块的底部进行比较。
-
我知道它是这样工作的,但由于它没有考虑到
date部分,它只能在同一天工作,并且在用户几天后打开应用程序时将无法工作。正确的?System.currentTimeMillis()只会给我们当前时间而不是日期? -
currentTimeMillis()为您提供自纪元以来的毫秒数,因此可以用于比较自 1970 年代以来的任何时间。不限于当天。
标签: android android-studio datetime kotlin