关于guard和#available的一个问题。

发布于 2022-09-02 01:40:13 字数 1012 浏览 18 评论 0

    private static func requestURL(url: String, success: (NSData?) -> Void, error: ((NSError) -> Void)? = nil) {
        guard #available(iOS 9, *) else {
            NSURLConnection.sendAsynchronousRequest(
                NSURLRequest(URL: NSURL (string: url)!),
                queue: NSOperationQueue.mainQueue(),
                completionHandler: { response, data, err in
                    if let e = err {
                        error?(e)
                    } else {
                        success(data)
                    }
            })
            return
        }
        NSURLSession.sharedSession().dataTaskWithRequest(
            NSURLRequest(URL: NSURL (string: url)!),
            completionHandler: { data, response, err in
                if let e = err {
                    error?(e)
                } else {
                    success(data)
                }
        }).resume()
    }

}
这个检查是不是太保守了?我记得NSURLSession在iOS7就可以用了,没必要非限定在iOS9以上啊。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

杀お生予夺 2022-09-09 01:40:13

莫非是为了 http2? http2 是 iOS 9 之后才能用的。。。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文