AFNetworking理解:

AFNetworking注意事项:

1):Get,Post请求中downloadProgress(uploadProgress)均是在session queue(当前会话队列)中调用。因此,如果想要根据上传下载进度来改变UI,则必须在主线程中修改。(iOS中UIKit框架不是线程安全的,为了确保安全,UI均在主线程中修改)

2):Get,Post请求中的success,failure回调默认均是在主线程中调用,因此可以直接在该回调中修改UI。(当然,可以通过AFURLSessionManager实例中的completionQueue属性,来配置success,failure回调所在的线程)

3):方法或函数应该在方法最开始处使用NSParameterAssert或NSCParameterAssert来强制输入的值满足先决使用条件,其他情况下则使用NSAssert或NSCAssert(NSParameterAssert(obj) === NSParameterAssert(obj != nil))

4):三目运算符使用注意:x?x:y == x?:y

5):AFURLSessionManager中所实现的NSURLSessionDelegate,NSURLSessionTaskDelegate,NSURLSessionDataDelegate,NSURLSessionDownloadDelegate等代理方法,大部分可以通过实现AFURLSessionManager实例的某些方法,来替换代理方法的实现。例如:

NSURLSessionDelegate中的可选代理方法

- (void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(NSError *)error

可以通过AFURLSessionManager中的实例方法

- (void)setSessionDidBecomeInvalidBlock:(nullable void (^)(NSURLSession *session, NSError *error))block;来替换。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值