iOS 新特性界面

.m

+ (UIViewController *)chooseRootViewController
{
    UIViewController *rootVc = nil;
    
    // 判断下用户有没有最新的版本
    // 最新的版本都是保存到info.plist
    // 从info.plist文件获取最新版本
    // 获取info.plist
    NSString *infoPath = [[NSBundle mainBundle] pathForResource:@"Info.plist" ofType:nil];
    //    NSDictionary *dcit = [NSDictionary dictionaryWithContentsOfFile:infoPath];
    
    NSDictionary *dict =  [NSBundle mainBundle].infoDictionary;
    
    // 获取最新的版本号
    NSString *curVersion = dict[@"CFBundleShortVersionString"];
    
    // 获取上一次的版本号
    NSString *lastVersion = [XMGSaveTool objectForKey:XMGVersionKey];
    
    // 之前的最新的版本号 lastVersion
    if ([curVersion isEqualToString:lastVersion]) {
        // 版本号相等
        
        rootVc = [[XMGTabBarController alloc] init];
        
    }else{ // 有最新的版本号
        
        // 保存最新的版本号
        // 保存到偏好设置
        [XMGSaveTool setObject:curVersion forKey:XMGVersionKey];
        
        // 创建新特性界面
        rootVc = [[XMGNewFeatureViewController alloc] init];
    }
    return rootVc;
}

.h

@interface XMGGuideTool : NSObject

// 选择窗口根控制器
+ (UIViewController *)chooseRootViewController;

@end

AppDelegate
.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    
    // 1.创建窗口
    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    
    // 2.设置窗口的根控制器
    // 选择根控制器
    self.window.rootViewController = [XMGGuideTool chooseRootViewController];
    
    // 3.显示窗口
    [self.window makeKeyAndVisible];
    
    return YES;
}

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