我有一个很奇怪的问题。我想知道是否可以使用AFNetworking 2.0阻止任何请求(当前和将来)。我的应用程序需要执行以下操作:如果用户未通过wifi连接->阻止该应用程序可能有的任何请求。
我只找到了一种阻止所有当前请求的方法:
[self.manager.operationQueue cancelAllOperations];
任何帮助都值得欢迎和赞赏
最佳答案
从iOS 6开始, NSMutableURLRequest
允许您通过调用setAllowsCellularAccess:
来指定是否可以通过蜂窝连接进行请求。这由Apple document解释。您将需要为每个请求设置此设置。
使用AFNetworking,连接到AFHTTPRequestOperationManager
的最干净方法是使用您自己的requestSerializer subclass并覆盖-requestWithMethod:URLString:parameters:error:
来调用super并使用setAllowsCellularAccess:
修改请求。
如果您还在iOS 7代码路径中使用NSURLSession,则可以使用 NSURLSessionConfiguration
,其allowsCellularAccess
属性设置为NO
。每个 session 仅设置一次。
关于ios - 如何使用AFNetworking 2.0将所有网络请求限制为Wi-Fi连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21261186/