我的应用程序崩溃了消息:
dyld:未找到符号:_NSURLAuthenticationMethodClientCertificate
参考自: 在/ var /移动/应用/ C7B596AD-FB09-4685-BDFC-7E955A5DD185 / IRON TRAINERS.app/IRON培训师预计: /System/Library/Frameworks/CFNetwork.framework/CFNetwork in 在/ var /移动/应用/ C7B596AD-FB09-4685-BDFC-7E955A5DD185 / IRON TRAINERS.app/IRON TRAINERS(lldb)
当我尝试构建并运行时。当我从我的项目中删除CFNetwork时,它可以工作,我不知道为什么。
我刚刚安装了Xcode6Beta并打开了我的项目。它在Xcode5.1上运行良好。
更新:
在使用Xcode 6的iOS模拟器上运行正常,问题出在运行iOS 7.1.1的设备上。
更新2:
下面选择的答案对我有用,虽然我已经将基础框架显式添加到我的项目中,但我必须将其删除并再次添加。至少现在问题已经解决了。 :)
答案 0 :(得分:87)
编辑包含您需要采取的两个可能步骤:
似乎有一个变化,哪个标题包含iOS8.0中的内容(例如,glextensions文件不再位于顶部标题中)。如果您明确地将Foundation框架添加到您的项目中,它将构建正常。当然,使CFNetwork成为可选项会导致失败,并且只是构建错误的解决方案,而不是整体解决方案。
答案 1 :(得分:38)
我与UIAlertAction
dyld:未找到符号:_OBJC_CLASS _ $ _ UIAlertAction 参考自:/ var / mobile / Applications / .... app / ... 预期在:/System/Library/Frameworks/UIKit.framework/UIKit 在/ var / mobile / Applications / .... app / ...
让UIKit.frameWork
Optional
解决了我的问题。在你的情况下,我猜,让你的CFNetwork.framework
optional
也可以解决你的问题。
答案 2 :(得分:16)
XCode中的重新排序没有做到这一点;我正在使用Cocoapods,它创建了一个Pods.xcconfig文件。这有一个OTHER_LDFLAGS行。我把-framework Foundation
作为第一个条目,这使我的项目有效。
OTHER_LDFLAGS = -framework Foundation -ObjC …
(请注意,每次pod update
时都会重新生成此文件。)
答案 3 :(得分:11)
重新排序您的框架以在CFNetwork之前拥有Foundation。
这是对Xcode 6中显然是一个错误的事情的临时修复。
答案 4 :(得分:6)
我在WWDC遇到了这个问题。我和一些苹果工程师交谈过,他们告诉我这是SDK中的一个错误,它是在CFNetwork&基金会,并将在下一个版本中解决,很快就会到期。在某些情况下,你可以通过玩导入订单框架来解决它,但它并不总是有效。
答案 5 :(得分:1)
我发生过几次简单的清洁(移位+ cmd + K)就可以了。
答案 6 :(得分:1)
我遇到了类似的错误: dyld:未找到符号: _NSDictionary0 通过链接: 我将相关项目的部署目标重置为相同的值:8.0,然后就可以了。可能在ios9.0和ios8.0中有所改变,所以如果我们想要兼容8.0,我们应该让相关的项目知道。
答案 7 :(得分:0)
让CFNetwork.framework可选,它对我有用
答案 8 :(得分:0)
就我而言,这是当我使用CocoaPods更新了第三方库时发生的。
只需清除构建文件夹即可 ⇧ ⌘ K
答案 9 :(得分:0)
就我而言,我有一个与 Apple 内部框架 AuthKit 同名的框架。所以在运行时它试图在我的 AuthKit 框架而不是苹果的框架中查找符号 AKAppleIdSession。从而导致崩溃,错误 Symbol not found