使iPhone应用程序与iOS 3兼容

时间:2011-12-29 18:28:59

标签: iphone ios xcode ios4 ios3.0

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

4 个答案:

答案 0 :(得分:2)

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

如果你找不到仍然在任何地方运行3.x的设备,即使只是借了一个小时,为什么还要和这样的稀有兼容呢?

答案 1 :(得分:2)

这是我的iOS 3清单:

  • 确保您的应用在慢速CPU和更少内存上正常运行。
  • 支持armv6。将armv6添加到体系结构中,从所需的设备功能中删除armv7,如果编译器存在代码生成错误,则在armv6上禁用thumb。
  • 不要使用ARC,iOS 3上没有(官方)支持。
  • 检查是否存在更新的方法(使用respondsToSelector :)或类,而不是在大多数情况下检查操作系统版本。
  • 不要使用iOS 3上存在的手势识别器,但它们是私有API,并且缺少重要的方法。你需要手动处理触摸事件。
  • 如果你使用块,你需要动态链接系统库,它需要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;
}

答案 2 :(得分:1)

点按项目,点按目标,点按摘要,将部署目标设置为3.x.然后,XCode顶部的Scheme下拉菜单将显示在3.x模拟器中运行它的选项。

答案 3 :(得分:0)

iOS developer center上有一个指向Xcode 3的下载链接。那可能包含iOS 3.