根据应用版本判断是否需要启动引导页(iOS应用)

先吐槽一下。。。。。。脑子太笨,没转过来弯,第一次没理解需求弄成了登陆成功后在此启动不需要引导页,然后老大说不对,是首次使用安装后第一次启动引导页之后根据版本来判断是否需要启动引导页;

原理:获取当前应用版本信息存入沙河中,之后与沙河中的信息比较来判断是否需要引导页;

//获取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];

}

其实思想很简单,就是一着急就错了自己都找不到错在哪,别人看后很简答的,很容易的就找到了。。。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我们在移动应用开发中经常会应用到启动页与引导页,为了实现启动页与引导页,以及应用功能界面的无缝连接,今天我...
    拉布拉熊阅读 2,620评论 0 3
  • 启动页专题 总述: 两种方式,一种是使用系统自带的,按规则定义启动图片名称即可,显示为1秒,要想延长时间,用[ns...
    Kevin_Junbaozi阅读 8,241评论 10 10
  • 两种方式,一种是使用系统自带的,按规则定义启动图片名称即可,显示为1秒,要想延长时间,用[nsthread sle...
    韩微阅读 4,976评论 0 10
  • 1、禁止手机睡眠[UIApplication sharedApplication].idleTimerDisabl...
    DingGa阅读 1,144评论 1 6
  • 知道吗,那天下午的那个少年唱的小幸运是唱给我听的呢。 最先听他唱歌是在走廊。那个男人唱的很好听呢。对我而言可爱的她...
    西陈阅读 286评论 0 0