我的应用中有一个通知太频繁了。我想在触发通知时存储日期/时间变量。然后下一次它将比较当前日期/时间,并且仅在距离上一次超过10分钟时播放通知。
我在网上找到很多关于比较日期的教程,以找出哪两个日期更新但不是这个?
答案 0 :(得分:2)
只需计算日期的time
值之间的差异,并将其与10分钟(以毫秒为单位)进行比较:
private const TEN_MINUTES: Number = 1000 * 60 * 10;
// time value of the last notification (milliseconds)
private var lastNotificationTime: Number = NaN;
private function isNewer(currentDate: Date): Boolean
{
if (currentDate == null)
return false;
if (isNaN(lastNotificationTime))
return true;
return currentDate.time - lastNotificationTime > TEN_MINUTES;
}
private function notification(): void
{
var date:Date = new Date();
if (isNewer(date)) {
lastNotificationTime = date.time;
// play notification
}
}