6

我的 iphone 应用程序在 IOS 4.3 模拟器中运行,但不在任何其他 IOS 4.0+ 模拟器中运行。即便如此,它也会在那里运行。

我收到以下错误 -

GNU gdb 6.3.50-20050815(Apple 版本 gdb-1518)(2011 年 2 月 12 日星期六 02:52:12 UTC)版权所有 2004 Free Software Foundation, Inc. GDB 是自由软件,受 GNU 通用公共许可证保护,您是欢迎在某些条件下更改和/或分发它的副本。键入“显示复制”以查看条件。GDB 绝对没有任何保证。键入“显示保修”以获取详细信息。此 GDB 配置为“x86_64-apple-darwin”。附加到进程 71564。dyld:找不到符号:_OBJC_CLASS_$_AVCaptureDevice 引用自:/Users/qianfan/Library/Application Support/iPhone Simulator/4.2/Applications/XXXX-XXXX /XXXX.app/XXXX 预期在:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/AVFoundation。

我的应用程序正在使用(静态引用)最新的 ZXing iphone 代码(截至 2011-03-31 2001-04-24 测试的两个版本)。

我相信 AVCaptureDevice 存在于所有 iOS 4.0 + 并且 zxing 支持 ios 4.0 +。当我做:

Macintosh:zxing-trunk XXX$ grep _OBJC_CLASS_$_AVCaptureDevice /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/AVFoundation.framework/* 二进制文件/Developer/Platforms/iPhoneSimulator。 platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/AVFoundation.framework/AVFoundation 匹配

有什么建议么?我要在这里寻找什么?太感谢了。

4

3 回答 3

8

我只想提一下 mmilo 的回答(关于将“必需”更改为“可选”)为我解决了这个问题。只需单击 AVFoundation.framework(在项目视图中的 Frameworks 文件夹下),然后确保打开最右边的视图窗口。您可以在此处将“目标成员资格”从“必需”切换为“可选”。

我的具体问题与梅尔文的相同。使用 4.3 SDK 时,我无法在 4.2 模拟器上编译我的项目,因为它找不到 AVCaptureDevice 类。

于 2011-06-06T21:30:41.010 回答
3

AVFoundation 框架在模拟器中不起作用。仅在设备上。

于 2011-07-01T06:50:31.527 回答
0

看起来您的项目没有与 AVFoundation 链接。也许您链接到版本级别或其他什么?这可以解释为什么它建立在一个之上而不是其他之上。

于 2011-04-24T16:19:30.350 回答