注:先从沙盒中读取上次使用的版本号,在获取当前软件的版本号,两者相比较,如果相等,就显示TabBar控制器,如果不相等,就显示新特性控制器,并把当前软件的版本号存储到沙盒中。
事例图:
具体代码:
在AppDelegate文件方法- (BOOL)application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions中的代码如下:
NSString *key = @"CFBundleVersion";
//取得沙盒中上次使用的版本号
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *lastVersion = [defaults stringForKey:key];
//获得当前软件的版本号(这个是从软件配置文件(ItcastWeibo-Info.plist)中读取信息)
NSString *currentVersion = [NSBundle mainBundle].infoDictionary[key];
if([currentVersion isEqualToString:lastVersion]){
//显示状态栏
application.statusBarHidden = NO;
self.window.rootViewController = [[IWTabBarViewController alloc] init];
}else{
//新版本
self.window.rootViewController = [[IWNewfeatureViewController alloc] init];
//存储新版本
[defaults setObject:currentVersion forKey:key];
[defaults synchronize];
}