使用Xcode 4.2和iOS 5 SDK时是否可以定位较旧的iOS版本?

Gre*_*lis 103 iphone xcode ios5

我刚刚下载了带有iOS 5 SDK包的Xcode 4.2,我立即注意到我无法使用我的iPhone 3Gs和iOS 4.2.1进行调试.我只能在安装了iOS 5的iphone 4上进行调试和测试.

对于运行任何低于5.0 Xcode的iOS的任何设备,只是说"完成了iPhone3GS的运行"并且没有运行它.我的部署目标设置为3.0,因为我没有使用3.0以上的应用程序中的任何功能,我希望能够定位所有版本3.0或更高版本.我安装了所有配置文件并且是最新的.

我已经退出并重新启动了xcode,我已多次清理构建.我尝试在archtecture构建设置中添加armv6,但没有任何东西可以让我在ios 4.2.1的旧手机上构建和运行我的应用程序.

我的问题是,是否仍然可以使用适用于低于5的iOS版本的新SDK工作?如果我无法在旧手机上安装我的应用程序,我怎么能确定我的应用程序仍然可以在较低的iOS版本上运行?

编辑: 好的,看起来iOS SDK 5默认情况下放弃了对armv6的支持.您需要做的是在Target和您的Project的Build Settings下的Architectures字段中添加armv6.然后您的应用程序将能够在iPhone 3G设备上运行.答案可以在这里找到 如何使用iOS 5构建armv6和armv7架构

mmo*_*ris 152

我试图让一个新创建的Xcode 4.2项目在iPhone 3G 4.2.1上运行时遇到同样的问题.以下是我能够让它运行的方式.

1)将目标的"构建设置"==>"架构"从"标准(armv7)"更改为"其他".添加armv6和armv7.

2)将目标的"构建设置"==>"有效架构"更改为armv6和armv7.

3)将目标的"构建设置"==>"iOS部署目标"更改为iOS 4.2.

在此输入图像描述

4)打开项目*-Info.plist,删除设置"必需的设备功能"(注意它需要armv7) 在此输入图像描述

顺便说一句,当我尝试通过组织者手动添加应用程序时,我想到了这一点,它报告:

无法安装应用程序

适用于/Users/.../TestsDebug.app的Info.plist指定设备功能要求,Dev iPhone 3G无法满足这些要求

所有人都应该在那之后工作 谈论PITA.

  • 谢谢!我在其他地方读过有关架构设置的内容,但似乎没有其他人提到"必需的设备功能"设置. (4认同)

Ale*_*iks 12

转到Xcode>首选项>下载并安装旧iOS版本的调试支持.