geekband.01.iOS开发高级

NSURLSession基本用法
根据Session类型选择NSURLSessionConfiguration
设置Configuration,如指定NSURLCache等
用Configuration创建Session+[NSURLSession sessionWithConfiguration:delegate:delegateQueue:];
+[NSURLSession sessionWithConfiguration];

在Session里创建网络访问任务
启动任务-[NSURLSessionTask resume]

NSURLSessionConfiguration
NSURLSessionConfiguration 对象用于对 NSURLSession 对象进行初始化。NSURLSessionConfiguration 对以前 NSMutableURLRequest 所提供的网络请求层的设置选项进行了扩充,提供给我们相当大的灵活性和控制权。从指定可用网络,到 cookie,安全性,缓存策略,再到使用自定义协议,启动事件的设置,以及用于移动设备优化的几个新属性,你会发现使用 NSURLSessionConfiguration 可以找到几乎任何你想要进行配置的选项。
NSURLSession 在初始化时会把配置它的 NSURLSessionConfiguration 对象进行一次 copy,并保存到自己的 configuration 属性中,而且这个属性是只读的。因此之后再修改最初配置 session 的那个 configuration 对象对于 session 是没有影响的。也就是说,configuration 只在初始化时被读取一次,之后都是不会变化的。
NSURLSessionConfiguration 的工厂方法
NSURLSessionConfiguration 有三个类工厂方法,这很好地说明了 NSURLSession 设计时所考虑的不同的使用场景。
+defaultSessionConfiguration 返回一个标准的 configuration,这个配置实际上与 NSURLConnection 的网络堆栈(networking stack)是一样的,具有相同的共享 NSHTTPCookieStorage,共享 NSURLCache 和共享 NSURLCredentialStorage。
+ephemeralSessionConfiguration 返回一个预设配置,这个配置中不会对缓存,Cookie 和证书进行持久性的存储。这对于实现像秘密浏览这种功能来说是很理想的。
+backgroundSessionConfiguration:(NSString *)identifier 的独特之处在于,它会创建一个后台 session。后台 session 不同于常规的,普通的 session,它甚至可以在应用程序挂起,退出或者崩溃的情况下运行上传和下载任务。初始化时指定的标识符,被用于向任何可能在进程外恢复后台传输的守护进程(daemon)提供上下文。 ###更多内容 关于NSURLSession的更多信息可以参考从 NSURLConnection 到 NSURLSession

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • URLSession NSURLSession是iOS7中新的网络接口,与NSURLConnection是并列的。...
    JonesCxy阅读 5,596评论 0 9
  • iOS 7 和 Mac OS X 10.9 Mavericks 中一个显著的变化就是对 Foundation UR...
    kobehjk阅读 1,751评论 0 2
  • (二)股东出资违约行为的表现形式 1.出资义务不履行 拒绝出资、不能出资、虚假出资、抽逃出资。 抽逃出资:制作...
    willdo_阅读 3,701评论 0 0
  • 寒风玉露气凋伤,惆怅无人偕隐藏。 雁字廱廱飞天外,荷株寂寂寐塘央。 北堂蟋蟀和烟老,南国清秋逐月凉。 莫谓含愁独不...
    月照空林阅读 2,707评论 4 0
  • 一个人就像是一台新出场的电脑,只要你具备了某些配置和性能,自然就会被归类到相应的圈子里,而不是先把自己丢到一个圈子...
    kwfs笔记阅读 1,661评论 0 0

友情链接更多精彩内容