Xcode中Base SDK的含义

Enc*_*ada 2 xcode cocoa-touch objective-c

项目设置中"Base SDK"的含义是什么?这让我很困惑.例如,如果我在那里选择iOS 4.2,我的应用程序可以在哪些设备上运行?只在iPhone 4上?这让我很担心,因为iOS 4.2是我在最新的Xcode 3.2.5中可以选择的唯一选项.

我还想知道项目设置中"iOS部署目标"的含义.因为在这里我可以选择iOS 4.1说.具有4.1的部署目标和4.2的基础SDK有什么意义?这不会搞砸了吗?这两者有什么关系?

Enr*_*tyo 5

基本上它意味着您将能够使用4.2 SDK中公开的所有API.这与"您的应用可以运行哪款手机"无关.

另一方面,iOS部署目标是询问此应用程序可以运行哪些设备.这是一个非常危险的问题,因为你可以说从iOS 3.0到4.2.这意味着您的应用程序可以安装在运行iOS 3.0到4.2的任何iPhone中,无论手机是什么.这意味着原始iPhone和iPhone 3G可以运行您的应用程序,如果他们至少安装了iOS 3.0.如果您决定这样做,您应该仔细测试您的应用程序.Apple没有提供任何测试旧操作系统的方法.你必须自己设计这个策略.