使iPhone应用程序兼容iOS 3



我使用xcode 4开发了一个iPhone应用程序,该应用程序与iOS 4.3兼容,并在iPhone 4设备上顺利运行。
我的问题是如何检查我的应用是否与iOS 3兼容。
我没有任何iOS 3设备来运行该应用程序,所以唯一的解决方案是检查iOS 3模拟器的兼容性,但我没有找到任何选项在iOS 3模拟器上运行该应用程序。对于如何安装iOS 3的SDK有什么建议吗?由于

确保兼容性的唯一方法是借用或购买运行iOS 3的设备进行测试。模拟器,即使是一个旧的,是不够准确的,以确保兼容性。

如果您找不到仍在运行的设备3。X在任何地方,即使只是借一个小时,为什么要为这种罕见的兼容性而烦恼呢?

这是我对iOS 3的清单:

  • 确保你的应用程序在慢CPU和少内存下运行良好。
  • armv6支持。将armv6添加到体系结构中,从所需的设备功能中删除armv7,并在编译器有代码生成错误时禁用armv6。
  • 不要使用ARC, iOS 3不支持ARC。
  • 检查是否存在更新的方法(使用respondsToSelector:)或类,而不是在大多数情况下检查操作系统版本。
  • 不使用手势识别器,手势识别器在iOS 3中是存在的,但是是私有API,并且缺乏重要的方法。你需要手动处理触摸事件。
  • 如果你使用block,你需要动态链接系统库,这需要iOS 3.1(我听说iOS 3.0不支持动态链接)
下面是一个示例应用程序:didFinishLaunchingWithOptions: method.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease];
    if ([self.window respondsToSelector:@selector(setRootViewController:)]) {
        self.window.rootViewController = self.viewController;
    } else {
        [self.window addSubview:self.viewController.view];
    }
    [self.window makeKeyAndVisible];
    return YES;
}

点击项目,点击目标,点击Summary,将部署目标设置为3.x。然后XCode顶部的Scheme下拉菜单会显示你在3。x模拟器。

在iOS开发者中心有一个Xcode 3的下载链接。这可能包括iOS 3

最新更新