我刚刚下载了带有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架构
我在Xcode 4.2中创建了一个全新的单视图应用程序 iPhone应用程序,它只显示灰色屏幕.
当我构建应用程序时,我收到警告:
BWARN]warning: iPhone apps with a deployment target lower than 4.3 should include an armv6 architecture (current IPHONEOS_DEPLOYMENT_TARGET = "3.0", ARCHS = "armv7").
Run Code Online (Sandbox Code Playgroud)
我的构建设置是:
Info.plist中的必需设备功能值是armv6,armv7.
我制作了应用程序的Ad Hoc发行版(此应用程序只显示灰色屏幕)并将其放在iTunes上.
应用程序"SingleViewApplication"未安装在iPhone XXXXX上,因为它与此iPhone不兼容.
你知道如何让iPhone 3G能够运行使用Xcode 4.2构建的应用程序吗?