gpt4 book ai didi

ios7 - 迪尔德 : Symbol not found: _OBJC_CLASS_$_NSHTTPURLResponse

转载 作者:搜寻专家 更新时间:2023-10-31 08:13:29 25 4
gpt4 key购买 nike

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

该应用程序在 iOS 8 上运行良好,但是,当我尝试在 iOS 7 设备或运行 iOS 7 的模拟器中运行它时,启动该应用程序时出现以下错误:

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 并没有解决问题。

更新:

这是导致崩溃的代码:

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 类的任何使用都会导致应用程序在启动期间崩溃。

最佳答案

这是 iOS 8 SDK 的一个已知错误。作为解决方法,在项目设置中将 Foundation.framework 放在 CFNetwork.framework 列表中以链接到。

关于ios7 - 迪尔德 : Symbol not found: _OBJC_CLASS_$_NSHTTPURLResponse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24524742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com