也是贴一段代码吧:(过了凌晨12点即认为是第二天,并不是过了24*60*60s后)
//设置累计天数
- (void)setTotalCleanDays
{
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-(24*60*60)];
NSDate *today = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSString *yesterdayDateStr = [dateFormatter stringFromDate:yesterday];
NSString *todayDateStr = [dateFormatter stringFromDate:today];
NSString *lastDate = [[NSUserDefaults standardUserDefaults] objectForKey:KEYYESTERDAY];
if (lastDate == nil) {
NSInteger totalDays = [[NSUserDefaults standardUserDefaults] integerForKey:KEYTOTALCLEANDAYS];
[[NSUserDefaults standardUserDefaults] setObject:todayDateStr forKey:KEYYESTERDAY];
[[NSUserDefaults standardUserDefaults] setInteger:++totalDays forKey:KEYTOTALCLEANDAYS];
[[NSUserDefaults standardUserDefaults] synchronize];
} else if ([lastDate isEqualToString:todayDateStr]) {
} else if ([lastDate isEqualToString:yesterdayDateStr]) {
NSInteger totalDays = [[NSUserDefaults standardUserDefaults] integerForKey:KEYTOTALCLEANDAYS];
[[NSUserDefaults standardUserDefaults] setObject:todayDateStr forKey:KEYYESTERDAY];
[[NSUserDefaults standardUserDefaults] setInteger:++totalDays forKey:KEYTOTALCLEANDAYS];
[[NSUserDefaults standardUserDefaults] synchronize];
} else {
[[NSUserDefaults standardUserDefaults] setObject:todayDateStr forKey:KEYYESTERDAY];
[[NSUserDefaults standardUserDefaults] setInteger:0 forKey:KEYTOTALCLEANDAYS];
[[NSUserDefaults standardUserDefaults] synchronize];
}
}