代码之家  ›  专栏  ›  技术社区  ›  Jonathan Arbogast

在保持与早期版本的兼容性的同时,使用iPhone3.0功能的最佳方法是什么?

  •  4
  • Jonathan Arbogast  · 技术社区  · 17 年前

    例如,假设我写了自己的课程,允许我在iPhone上录制音频。iPhoneOS3.0现在作为CocoaTouch框架的一部分提供了这种功能。

    如何使用我现有的类来支持iPhone OS 2.2.1版和更早版本,但同时利用Cocoa Touch框架提供的新类来支持iPhone OS 3.0?

    2 回复  |  直到 17 年前
        1
  •  4
  •   rpetrich    17 年前

    由于Objective-C是一种非常动态的语言,因此可以针对2.x和3.0功能的存在进行查询:

    id pasteboard = [objc_getClass("UIPasteboard") generalPasteboard];
    if (pasteboard) {
        NSLog(@"Got pasteboard, we're clearly on 3.0+");
    } else {
        NSLog(@"Pasteboard not available, definitely 2.x");
    }
    
        2
  •  4
  •   Grouchal    17 年前

    iPhone平台的升级率是所有移动操作系统中最高的,所以我不会担心向后兼容性。移动到OS3.0API,专注于用你的应用做更多其他伟大的事情。

    如果人们想要你的应用并且他们有2.2.1版本——他们所要做的就是升级——iPhone操作系统也是最容易升级的操作系统。