//弹出样式1、4、5、6弹窗(每天最多弹出2次)
//控制随机[0,4]不包括4
NSDate *nowDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSString *nowDateString = [dateFormatter stringFromDate:nowDate];//当前的时间
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
if(![userDefaults objectForKey:@"dateCount"]){
//初始化,这段代码整个app只初始化一次
NSDictionary *dateDic = @{nowDateString:@"0"};
NSUserDefaults *dataUser = [NSUserDefaults standardUserDefaults];
[dataUser setObject:dateDic forKey:@"dateCount"];
[dataUser synchronize];
}
//取值判断
NSDictionary *currentDateDic =[userDefaults dictionaryForKey:@"dateCount"];
if([currentDateDic objectForKey:nowDateString]){
//如果当前时间取数有值那么可以往后判断次数,并依次修改当前时间对应的count
NSInteger countInt=[[currentDateDic objectForKey:nowDateString] integerValue];
if(countInt<2){
//根据随机的概率判断弹出哪种弹窗
NSInteger lotter = arc4random()%4;
if(lotter==0){
}
countInt++;
NSDictionary *dateDic = @{nowDateString:[NSString stringWithFormat:@"%ld",countInt]};
NSUserDefaults *dataUser = [NSUserDefaults standardUserDefaults];
[dataUser setObject:dateDic forKey:@"dateCount"];
[dataUser synchronize];
}
}else{
//如果当前时间取值没有数据,说明当前时间已经过了记录,可以重新设置数据
NSDictionary *dateDic = @{nowDateString:@"0"};
NSUserDefaults *dataUser = [NSUserDefaults standardUserDefaults];
[dataUser setObject:dateDic forKey:@"dateCount"];
[dataUser synchronize];
}