【问题标题】:Missing AVFoundation.framework缺少 AVFoundation.framework
【发布时间】:2010-09-27 23:36:51
【问题描述】:

AVFoundation.framework 不是文档所说的位置。我安装了 iPhone SDK 2.2(从未安装过以前的 sdk 版本),但在 /System/Library/Frameworks 下找不到该文件夹​​

我确实在下面找到了它

 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/System/Library/Frameworks/

文件夹,但如果我从该位置添加它,那么编译器将找不到头文件。我尝试将整个AVFoundation.framework 文件夹复制到/System/Library/Framework,但仍然找不到头文件。

如何使用AVFoundation 类?

谢谢, 亚历克斯

【问题讨论】:

  • 嗯,我认为这个框架不适用于 OS 2.1 iPhone,对吧?
  • 不 - 该框架仅在 OS 2.2 开始添加

标签: iphone cocoa-touch


【解决方案1】:

我在我的代码中使用了 AVFoundation 类,并以与您相同的方式添加它。由于某些未知原因,您无法浏览标头,但将其放入您的类头文件编译就好了:

#import <AVFoundation/AVAudioPlayer.h>

我已经提交了我的应用并获得了批准,所以我认为这种方法没有任何问题。 XCode 中的 AVFoundation 引用仍然是红色的,但它似乎工作正常。删除框架引用会导致编译错误,所以它肯定需要存在。

【讨论】:

  • 谢谢!您的回答让我意识到我正在导入 AVFoundation.h 而不是 AVAudioPlayer.h,这就是它没有编译的原因
  • 在这种情况下,您应该将此问题标记为已回答,这就是整个堆栈溢出的工作方式。你也可以对我的回答投赞成票/反对票,这取决于它是否好。
【解决方案2】:

我遇到了各种各样的问题,直到我意识到我也必须将“活动可执行文件”更改为“iPhone Simulator 2.2”。这是我采取的步骤:

AVFoundation 框架添加到您的项目中。按住 Ctrl 键单击 Frameworks 文件夹并选择“添加现有框架”。 “/System/Frameworks”中的默认框架目录可能不包含新的 AVFoundation 框架文件,因此您需要深入 iPhone SDK 目录才能找到该文件。我在/Developer/Platforms/iPhoneSimulator.platform/developer/SDKs/iPhoneSimulator2.2.sdk/System/Library/Framework 找到了我的。 (是的,就是这么深!!)。

现在从您的 XCode 中,选择您的 Active SDK 为“Simulator - iPhone OS 2.2”,然后选择您的“Active Executable”为“iPhone Simulator (2.2)”

这为我解决了问题。希望你的也是同样的问题。

【讨论】:

    【解决方案3】:

    我在以下位置找到了我的:

    /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks

    【讨论】:

      猜你喜欢
      • 2012-05-22
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 2021-09-22
      • 2021-05-14
      • 2014-01-23
      • 2020-06-22
      • 2012-04-21
      相关资源
      最近更新 更多