当前(截至2008年12月)iPhone SDK允许我在构建应用程序时选择3个版本:2.0,2.1,2.2. - 我会忽略下面的2.1.
我的假设:
2.2有比2.0更多的API函数,
2.2自2.0以来修复了错误,
2.2向后兼容2.0(用于构建和运行),
如果我使用SDK 2.0构建,我的应用程序将适用于iPhone 2.2,
如果我使用SDK 2.2构建,我的应用程序将无法在iPhone 2.0上运行.
我认为使用可以构建应用程序的最早版本是最好的,这样它将在运行旧操作系统的iPhone上运行.
但如果我用2.0构建它,我的应用程序是否会有丢失的风险?也许一些速度或更好的UI元素.但也许2.0和2.2之间没有太大的区别,甚至担心它?
所以我的问题是:我应该选择哪种SDK?
我可以构建的earlist SDK,以拓宽我的目标市场.
最新的SDK始终如此,以便我的应用程序从改进中获益 - 以可能减少我的市场为代价.
(如果答案很明显,为什么我有选择?!)
您可以使用iPhone OS 2.2 SDK并仍然可以为iPhone OS 2.0编译; 您执行此操作的方式与Mac OS X相同.您使用的SDK确定您要使用API的最新版本的操作系统,而您使用的部署目标确定您想要的最新版操作系统运行.这两个通常应该在Xcode的项目级别设置.
因此,您可以针对iPhone OS 2.2 SDK构建软件,并且在安装了2.2或更高版本的设备上运行时,请使用2.2功能.但是,如果在安装了2.2之前的操作系统的设备上运行,并且您的应用程序应该正常工作,您可以将其部署目标设置为2.0并且不使用2.2功能.