判断是否为第一次登陆

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"everLaunched"]/*如果不是第二次使用*/)
{
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"everLaunched"];//设置第二次使用的value值为yes
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"];//设置第一次使用的value值为yes
}
else    
{
   [[NSUserDefaultsstandardUserDefaults] setBool:NO forKey:@"firstLaunch"];
}
/*
   两次用到的UserDefault中的对象的含义分别为
   everLaunched:作为判断变量判断程序是否以前进入过,仅在判断时使用YES代表进入过(即不是第一次进入)
   firstLaunch:仅在本次运行中使用,本次运行中判断本次是不是第一次;
   所以if代码块执行的意思是,如果是第一次进入,将everLaunched置为YES(下次进入就是第二次进入,作为判断),将firstLaunch置为YES,告诉后面运行的程序,本次是第一次运行。
   else代码段的意思为不是第一次运行,将firstLaunch置为NO,告诉后面运行的程序,本次不是第一次运行
*/



//后续判断可使用如下代码判断
if([[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"])
{
   //运行第一次程序运行的代码        
}
else
{
   //运行不是第一次运行的代码
}
原文地址:https://www.cnblogs.com/jx66/p/5082467.html