首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dyld:符号未找到:_OBJC_CLASS_$_NSHTTPURLResponse

dyld:符号未找到:_OBJC_CLASS_$_NSHTTPURLResponse
EN

Stack Overflow用户
提问于 2014-07-02 06:59:24
回答 4查看 5.7K关注 0票数 5

我用Xcode6 Beta 2编写了一个Swift应用程序,它使用CFNetwork类(如NSURLRequestNSHTTPURLResponse )进行一些网络连接。

尽管如此,当我尝试在iOS 7设备上或在运行iOS 7的模拟器上运行该应用程序时,该应用程序在启动该应用程序时会出现以下错误:

代码语言:javascript
复制
dyld: Symbol not found: _OBJC_CLASS_$_NSHTTPURLResponse
  Referenced from: /Users/patrick/Library/Developer/CoreSimulator/Devices/B0A61F43-A67C-4803-8F5D-77C3972107BE/data/Applications/E0C7C89F-9EEE-4893-BE5B-FCC224F2855D/CheckYourWeather.app/CheckYourWeather
  Expected in: /Applications/Xcode6-Beta2.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/System/Library/Frameworks/CFNetwork.framework/CFNetwork
 in /Users/patrick/Library/Developer/CoreSimulator/Devices/B0A61F43-A67C-4803-8F5D-77C3972107BE/data/Applications/E0C7C89F-9EEE-4893-BE5B-FCC224F2855D/CheckYourWeather.app/CheckYourWeather

我做了一些研究,发现这是一个连接问题。不过,我知道我正在使用的类已经在iOS 7中可用了。

我还尝试将CFNetwork.framework添加到项目设置中的框架中,并将其设置为可选,这只会导致应用程序在运行时崩溃。

让我困惑的是:我编写了一个测试应用程序,并将我在主应用程序中使用的代码粘贴到它中,它运行得很好。因此,代码可能不是问题所在。

从模拟器/设备中删除应用程序,对项目进行清理,删除Xcode的DerivedData并没有解决问题。

更新:

造成崩溃的代码如下:

代码语言:javascript
复制
extension NSURLRequest {
    class func plainPostRequest(url: NSURL, httpBody: String) -> NSURLRequest {
        let urlRequest = NSMutableURLRequest(URL: url)
        urlRequest.HTTPMethod = "POST"
        urlRequest.HTTPBody = httpBody.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
        urlRequest.setValue("text/plain", forHTTPHeaderField: "Content-Type")

        return urlRequest
    }
}

但这只是个例子。CFNetwork类的任何使用都会导致应用程序在开始时崩溃。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-07-02 22:21:28

这是iOS 8 SDK中的一个已知错误。作为解决办法,在项目设置中要链接到的框架列表中,将Foundation.framework移动到CFNetwork.framework之前。

票数 12
EN

Stack Overflow用户

发布于 2014-10-29 23:15:45

对我来说,在Foundation.framework无法工作之前移动CFNetwork.framework就可以了。我需要关闭并重新启动这个项目才能开始工作。

票数 2
EN

Stack Overflow用户

发布于 2014-07-02 17:39:43

我能够通过创建一个新项目并复制我的所有类和资产来解决这个问题。不幸的是,我无法找到问题的真正根源。

任何替代的解决方案都是非常感谢的!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24524742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档