尝试将 iPhone 应用程序安装到我的开发设备上时出现“不正确的架构”

Posted

技术标签:

【中文标题】尝试将 iPhone 应用程序安装到我的开发设备上时出现“不正确的架构”【英文标题】:"Incorrect Architecture" when trying to install iPhone app onto my development device 【发布时间】:2011-04-28 20:05:39 【问题描述】:

我有一部 iPhone 3G(运行 ios 4.0),用于在旧硬件上测试我的应用程序的性能。我曾经能够毫无问题地使用该设备,即使使用 Xcode 4。

不过,不知何故,当我安装最新版本的 Xcode4(4.0.2 build 4A2002a)时,我无法在这台旧设备上安装我的应用程序。当我按下运行按钮时,我得到了

No provisioned iOS devices are available. Connect an iOS device or 
choose an iOS simulator as the destination.

但是,设备上没有任何变化(我的配置文件仍然安装并有效),整个过程在我的主要设备 iPhone 4 上运行良好。

我使用管理器中的应用程序屏幕手动将应用程序安装到手机上。这看起来更有希望,因为进度条开始填满并表明它正在将文件复制到设备上。不过还没说完,就弹出了一条信息:

An unknown error message 'IncorrectArchitecture', was received from the device. 

并且该应用永远不会出现在手机上。

我项目的部署目标是 3.1.3,Build Settings 中的“Architectures”字段设置为“Standard (armv6 armv7)”

这里有什么我遗漏的吗?为什么不能安装?Xcode4 的第一个版本和第二个版本之间发生了什么变化?

【问题讨论】:

您是否尝试在二进制文件上运行 lipo -info 以确保生成 armv6 代码? 嗯!它说它是“armv7”我需要指定其他设置才能获得 armv6 吗? 【参考方案1】:

在您的目标设置(不是项目设置)中,确保您有:

架构:标准 (armv6 armv7)

有效架构:armv6 armv7

仅构建活动架构:否

(虽然 Yes 在调试中通常是可以的 当您使用单个时构建 测试设备)

【讨论】:

谢谢!这会产生 armv6 输出,我可以通过 Organizer 手动将应用程序加载到手机上,但是当我在 Xcode 中按 Run 时,我仍然会收到“没有可用的预置 iOS 设备”。 这很奇怪……不知道还有什么建议。我会重新启动 Xcode 和 iPhone 3G,最后检查设备上安装的配置文件是否过期。

以上是关于尝试将 iPhone 应用程序安装到我的开发设备上时出现“不正确的架构”的主要内容,如果未能解决你的问题,请参考以下文章

如何将我的应用程序放入 iPhone 3G?

如何在其他人的 iphone/ipod touch 设备上安装我的应用程序

将开发的应用程序安装到 iphone 设备中

如何将 .ipa 文件安装到我的 iPhone 模拟器

为啥我的 iPhone 应用程序的发布版本在安装后第一次运行时会在设备上崩溃?

在开发设备上安装旧 iPhone OS