新特性界面

要实现开机启动后能够展示新的版本的应用的一些新特性,需要在-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{}方法中进行设置

  • 获取版本号的方法
    • 获取当前版本号
      NSString *curVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"];
    • 获取上一次的版本号
      NSString *lastVersion = [[NSUserDefaults standardUserDefaults]objectForKey:@"version"];
示例:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//    1.创建window
    self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
//    2.获取当前的版本号
    NSString *curVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"];
//    2.1获取上一次的版本号
    NSString *lastVersion = [[NSUserDefaults standardUserDefaults]objectForKey:@"version"];
//    3.判断两次版本号是否相同,以确定是否需要展示新特性界面
    if ([curVersion isEqualToString:lastVersion]) {//设置根控制器为主控制器
        ZHJMainVc *mainVc = [[ZHJMainVc alloc]init];
        mainVc.view.backgroundColor = [UIColor greenColor];
        self.window.rootViewController = mainVc;
    }else{//表示当前版本和上一次版本不一样,记录版本号,设置根控制器为新特性控制器
//    先将当前新版本的版本号保存,在展示新特性界面
        [[NSUserDefaults standardUserDefaults] setObject:curVersion forKey:@"version"];
        ZHJNewFeatureVc *newVc = [[ZHJNewFeatureVc alloc]init];
        newVc.view.backgroundColor = [UIColor cyanColor];
        self.window.rootViewController = newVc;
    }
//    4.显示可见
    [self.window makeKeyAndVisible];
    return YES;
}

你可能感兴趣的:(新特性界面)