1

我有一个 iOS 4.2 通用应用程序。我已经针对所有可用的模拟器(iPhone 4.0、4.2 和 4.2;iPad 3.2 和 4.2)测试了该应用程序。在这些模拟器和装有 iOS 4.2(iPad 4.2 和 iPhone 4.0)的真实设备上,一切都运行良好。

我遇到的问题是在具有 pre 4.0 iOS---iPhone 3.x 的设备上测试应用程序(来自 Xcode)时。错误是它无法运行应用程序:

dyld: Symbol not found: _OBJC_CLASS_$_UIPopoverController

应用程序构建没有错误(基础 SDK 仍然是 4.2),安装正常,但在启动时崩溃。我一直小心地将所有仅限 iPhone 的代码放在 /iPhone 文件夹/组中,仅将 iPad 放在 /iPad 文件夹/组中,并将所有共享库和视图放在 /Shared 中。此外,该应用程序在我的装有 iOS 4.0 的 iPhone 上运行没有错误。UIPopoverController 从来没有从 iPhone 笔尖使用/调用过,所以我不知道是什么原因造成的。我正在考虑添加一个不包括任何 iOS 3.2 后添加的新目标。在此期间对此提供任何帮助将不胜感激。

4

1 回答 1

1

将您的编译器切换到 LLVM GCC 4.2 并按照 Marco Arment 的这篇博文中的所有其他步骤操作:在使用新 API 时支持旧版本的 iOS

于 2010-12-30T20:32:59.847 回答