我的应用程序的新版本依赖于 iOS 5.0+。但是,我的旧版本允许 iOS 4。如果我没记错的话,如果它删除了对某些用户的支持,Apple 将拒绝该应用程序。我试图让不在 iOS 5.0+ 上的设备加载另一个名为oldVersion
. 这是我尝试过的:
float version = [[[UIDevice currentDevice] systemVersion] floatValue];
if (version < 5.0) {
UIViewController *olderVersion = [[[ViewController alloc] initWithNibName:@"oldVersion" bundle:nil] autorelease];
self.window.rootViewController = olderVersion;
[self.window makeKeyAndVisible];
} else {
//Load normally.
}
(这是在应用程序委托的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
)
我也试过加载我的新版本和
float version = [[[UIDevice currentDevice] systemVersion] floatValue];
if (version < 5.0) {
oldVersion *screen = [[oldVersion alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:screen animated:NO];
[screen release];
return;
} else {
//Normal stuff...
}
在我的viewDidLoad
. 它们都不能正常工作。第一个(在应用程序委托中)加载屏幕但不加载代码中的任何内容(如 NSLog() 和 UIAlertView 的)。第二个(viewDidLoad)不显示屏幕,它只是加载我的新版本,没有我在代码中进行的任何自定义。
那么,我如何将不在 iOS 5.0+ 上的设备发送到oldVersion
?