dyld:库未加载,6.0模拟器/6.0设备行为不同。

39

我的应用在Xcode的iPhone 6.0模拟器上运行良好,但当我尝试在我的6.0设备上运行它时,出现以下致命错误:

dyld: 库未加载:/System/Library/Frameworks/AdSupport.framework/AdSupport 引用位置:/var/mobile/Applications/26329A7C-04B0-415A-B8EB-3C59CC1EC0B1/hammerhead.app/hammerhead 原因:未找到映像

我确定我的手机版本是6.0并且已经更新。我的项目文件和info.plist文件中设置了部署目标为6.0。我该怎么办?

问题似乎与AdSupport框架有关,我将其放入我的应用中,以便新的Facebook SDK(3.1)可以与iOS 6一起使用。


2
当我在iOS 5.1模拟器上运行时,我也会遇到这个错误。 - SAHM
3个回答

60

如果你的目标是低于iOS 6.0版本,你需要将AdSupport.framework、Social.framework和Accounts.framework设为可选链接。

请看附带的屏幕截图。

干杯!!!enter image description here


您应该得到更多的赞,先生。截图 > 文本。 - txulu

56

我解决了自己的问题:将给你带来麻烦的框架设置为“可选项”,而不是“必需项”,方法是进入项目文件概要,向下滚动到链接的框架和库。


3
在iOS 7上的CloudKit.framework同样如此(它仅适用于iOS8)。转到“通用”>“链接的框架和库”,将CloudKit.framework更改为可选。 谢谢VSN。

如果我在iOS7中需要iCloud会怎样? - napolux

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接