先吐槽一下。。。。。。脑子太笨,没转过来弯,第一次没理解需求弄成了登陆成功后在此启动不需要引导页,然后老大说不对,是首次使用安装后第一次启动引导页之后根据版本来判断是否需要启动引导页;
原理:获取当前应用版本信息存入沙河中,之后与沙河中的信息比较来判断是否需要引导页;
//获取APP版本号,将版本号作为Key(比如Bool类型),存储在NSuserDefault中,初此安装打开时,key是不存在的,即进入引导页面,之后将此key保存起来(保证前面的判断不会再进入)app升级后,判断新版本号的key,发现没有,即显示新版本的引导页面,然后将Key保存起来,以此类推。
代码如下:
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSString *currentVerisonId = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
//安装后第一次启动引导页
if ([userDefaults boolForKey:currentVerisonId]) {
CRMLoginViewController *loginVC = [[CRMLoginViewController alloc] init];
self.window.rootViewController = loginVC;
}else{
CRMGuidePageViewController *guidePageVC = [[CRMGuidePageViewController alloc] init];
self.window.rootViewController = guidePageVC;
[userDefaults setBool:YES forKey:currentVerisonId];
[userDefaults synchronize];
}
其实思想很简单,就是一着急就错了自己都找不到错在哪,别人看后很简答的,很容易的就找到了。。。。。