使用iAd框架的通用iPhone / iPad项目

时间:2010-06-24 16:42:54

标签: iphone ipad frameworks universal-binary

如何设置支持iAd的通用项目(仅在iPhone应用程序中)?

使用iPhone SDK 4,假设我执行以下步骤:

  1. 打开XCode;
  2. 转到文件>新项目;
  3. 选择基于窗口的应用程序(或其他),选择产品:通用(并在选择项目名称后)。
  4. 它会像往常一样用iPhone / iPad组创建一个Universal项目骨架。 现在,我决定将iAd集成到我的iPhone应用程序中,因此我执行以下操作:

    1. 右键单击名为Frameworks>的项目组。添加>现有框架......
    2. 选择 iAd.framework >添加
    3. 到目前为止,这么好。我可以使用Active Executable简单地构建和运行项目名称 - iPhone模拟器4.0 ,项目运行正常。假设我将Active Executable更改为项目名称 - iPad Simulator 3.2 。尽管iAd.framework仍然在框架中成功引用(没有标记为红色),但应用程序在iPad模拟器中崩溃,我收到以下错误消息:

      dyld:未加载库:/System/Library/Frameworks/iAd.framework/iAd   参考自:/ Users / nexia1 / Library / Application Support / iPhone Simulator / 3.2 / Applications / 8479EE14-28AA-4628-A668-CCF3FE770628 / Untitled.app / Untitled   原因:未找到图像

      我可以在这样的环球项目中使用iAd吗? (即使我只在我的iPhone应用程序中引用它)。

      提前致谢

1 个答案:

答案 0 :(得分:3)

您需要弱化链接框架,并在您的代码中询问是否存在类。

Apple有一个类似的例子:http://developer.apple.com/iphone/library/samplecode/MailComposer/index.html

它是关于3.0上的应用内邮件表,但仍在2.x上运行,但你会明白这一点。