代码之家  ›  专栏  ›  技术社区  ›  squelart

我应该使用哪个iPhone“Active SDK”版本?

  •  7
  • squelart  · 技术社区  · 16 年前

    当前的(截至2008年12月)iPhone SDK允许我在3个版本之间选择,当我想要构建一个应用程序时:2.0、2.1、2.2。--我将忽略下面的2.1。

    我的假设:

    • 2.2提供的API函数多于2.0,
    • 2.2自2.0以来已修复错误,
    • 2.2与2.0向后兼容(既适用于建筑,也适用于运行)。
    • 如果我使用sdk 2.0构建,我的应用程序将在iPhone2.2上工作,
    • 如果我使用sdk 2.2构建,我的应用程序将无法在iPhone2.0上运行。

    我认为使用最早的版本来构建这个应用程序是最好的,这样它就可以在运行旧操作系统的iPhone上运行。

    但是,如果我用2.0构建我的应用程序,有没有可能会丢失某些东西呢?也许是一些速度更快或更好的用户界面元素。但也许2.0和2.2之间没有太大的区别来担心它?

    所以我的问题是:我应该选择哪个SDK?

    1. 我可以使用的Earlist SDK来扩大我的目标市场。
    2. 最新的SDK总是这样,这样我的应用程序就可以从改进中获益——代价是可能会减少我的市场。

    (如果答案很明显,为什么我有选择呢?!)

    3 回复  |  直到 15 年前
        1
  •  2
  •   Marc Novakowski    16 年前

    我会选择选项1-将其编译为2.0。这就是我们为应用程序所做的。仍然有很多人在运行旧的2.0 O/S,如果你编译到2.2,你的应用程序将不会在他们的设备上运行。

    也就是说,如果你开发了你的应用程序,遇到了一个bug,并且发现它已经在更新的固件版本中修复了,那么除非有解决方法,否则你可能没有太多的选择。每一个新版本都添加了一些新功能,尽管我不知道这些功能的全面列表(在API级别)。

        2
  •  27
  •   Chris Hanson    16 年前

    您可以使用iPhoneOS2.2sdk,仍然可以编译为iPhoneOS2.0;您这样做的方式与MacOSX相同。 SDK 你用的决定了 最近的 您想要的操作系统版本 使用API 部署目标 你用的决定了 最近最少的 您想要的操作系统版本 运行在 . 这两个通常都应该在Xcode中的项目级别设置。

    因此,您可以针对iPhone OS 2.2 SDK构建软件,在安装了2.2或更高版本的设备上运行时,使用2.2功能。但您可以将其部署目标设置为2.0和 在安装了2.2以前版本操作系统的设备上运行时,请使用2.2功能,您的应用程序应该可以正常工作。

        3
  •  0
  •   TimM    15 年前

    在我的测试中,如果您使用2.0,则无法使用2.1中显示的应用程序徽章功能(因此您可能需要至少使用该级别)

    提姆