将 Xcode 的目标设置为 iPhone 而不是 iPad

Posted

技术标签:

【中文标题】将 Xcode 的目标设置为 iPhone 而不是 iPad【英文标题】:Setting Xcode's target to iPhone NOT iPad 【发布时间】:2011-01-25 17:12:23 【问题描述】:

我刚刚升级到 iPhone SDK 3.2 Beta 4。升级后,我无法让应用程序在 iPhone 模拟器中启动 - 它一直在 iPad 模拟器中启动。我尝试过单击 Xcode 左上角的下拉菜单并将“Active Executable”设置为 iPhone 模拟器 3.1.3,但它一直返回到 iPad 模拟器。

什么给了?我对在 iPad 上运行的应用不感兴趣,也不想在模拟器中以 2X 模式对其进行测试。

谢谢,

【问题讨论】:

有关预发布 Apple SDK 的问题应在 Apple 机密论坛上提问,而不是在公共论坛上提问。 这个问题很好,它没有讨论任何机密。 记住苹果预发布俱乐部的第一条规则是没有人谈论苹果预发布俱乐部! +1 用于提及选项单击。不是很明显,我必须说 在 XCode 3.2.5 中设置 Simulator 4.2 在调试模式下被忽略,但在发布模式下不被忽略 【参考方案1】:

你不能真正在 3.2.x 中启动 iPhone 应用程序 - 有时它会弹出 - 但基本上现在它只用于 iPad 开发。

【讨论】:

谢谢 - 这就是问题所在。将活动 SDK 更改为 3.1.3 解决了该问题。【参考方案2】:

模拟器发布版本的更新。

首先,这个问题的标题与描述不符:Xcode target is not the same as the simulator hardware device。

如果您正在编写面向 3.2 的应用程序,它可以在 iPad(使用 OS 3.2)和 iPhone 上的较低 OS 版本上运行。为此,您可以将 Base SDK 设置为 iPhone Device 3.2,将 Targeted Device Family 设置为 iPhone/iPad,并将 iPhone OS Deployment Target 设置为 3.1(低于 3.2)。

iPhone模拟器有一个Hardware->Device的菜单选项,可以设置为iPhone或iPad。但是,您只能在 iPad 模式下运行 3.2 SDK 目标,而支持 iPad 的通用应用程序只能使用 3.2 SDK 构建。

您当然可以将模拟器设置为 iPhone 模式并从 Springboard 启动您的应用程序,但这会失去调试器连接。在安装应用期间切换模式会导致应用崩溃。

所以简短的回答还是一样:调试时不能在 iPhone 模式模拟器中运行通用 iPad 应用程序。

【讨论】:

【参考方案3】:

在 IDE 的左上角找到 Simulator 版本的下拉列表 - 翻转到 3.2 - 尝试将其放回 3.1.3

并重新启动您的应用。

【讨论】:

【参考方案4】:

这也让我发疯了,但答案就在这里:

http://quatermain.tumblr.com/post/517122761/running-universal-ipad-iphone-apps-in-the-simulator

简而言之,告诉 Xcode Build 用于 3.2 SDK,然后将构建菜单切换到 3.1 SDK 并告诉 Xcode Run 应用程序。 Presto,应用程序在 iPhone 模拟器中启动!

【讨论】:

【参考方案5】:

来自 Apple 的文档:“iPhone OS 3.2 不支持 iPhone 和 iPod touch 设备。它只能在 iPad 上运行。”没有办法针对 iPhone 3.2,所以没有模拟器。因此,您将不得不等待 ios 4。幸运的是,距离现在只有 4 天......当然它不会支持第一代 iPhone 设备,但对于所有其他 iPhone 用户来说,它是免费升级的。不确定 iPod Touch。

【讨论】:

【参考方案6】:

您应该能够在项目设置中更改目标平台。

【讨论】:

【参考方案7】:

更改目标平台和设备没有区别。它总是启动 iPad 模拟器。

如果您将模拟器切换到 iPhone 模式,应用程序就会消失。

这个开发环境一团糟。

【讨论】:

【参考方案8】:

简短回答:您可以在模拟器中更改硬件设置。硬件->设备

【讨论】:

如果您在 3.2 中启动您的应用程序,这将不起作用。修复是在 3.1.2 中启动【参考方案9】:

转到项目 设置活动可执行文件 有 2 个选项:Ipad Simulator 3.2 或 Iphone Simulator 4.0。 如果您选择 Iphone 模拟器,那么它将启动 Iphone 模拟器。 如果选择 Ipad 模拟器,则会启动 Ipad 模拟器。

【讨论】:

【参考方案10】:

我终于自己解决了这个问题。

首先,安装新版本的xCode,即xCode 4。

然后将项目方案设置为iphone模拟器并在xCode中运行应用程序几次。

然后重新安装 xCode 3,问题就会消失!

【讨论】:

以上是关于将 Xcode 的目标设置为 iPhone 而不是 iPad的主要内容,如果未能解决你的问题,请参考以下文章

将我的 iPhone 项目设置为发布而不是调试

iphone 应用最低要求 iOS

为 iPad 而不是 iPhone 设置横向方向

XCode:iPhone 目标依赖于 Mac OS X 目标

Xcode:构建特定于每个文件编译器构建设置的体系结构

使用 XCode 3 对 iPhone 静态库进行单元测试