AFNetworking是否有后台支持?

时间:2011-10-17 23:01:56

标签: iphone ios asihttprequest afnetworking

我正在调查AFNetworking作为ASIHTTPRequest的替代品,并注意到它是否支持后台下载/上传完全缺乏信息。

使用ASIHTTPReqeust对象,您所要做的就是致电[request setShouldContinueWhenAppEntersBackground:YES],请求将在后台继续。在AFNetworking中是否有对此的支持?

1 个答案:

答案 0 :(得分:48)

编辑:自AFNetworking 1.0RC1起,这是显式功能。 AFURLConnectionOperation现在有方法setShouldExecuteAsBackgroundTaskWithExpirationHandler:,它可以透明地为您管理所有这些。


这是一个隐含的功能,所以我并没有考虑做广告。您需要做的就是:


- (void)applicationWillResignActive:(UIApplication *)application {
    __block UIBackgroundTaskIdentifier backgroundTaskIdentifier = [application beginBackgroundTaskWithExpirationHandler:^(void) {
        [application endBackgroundTask:backgroundTaskIdentifier];
        [[YourRestClient sharedClient] cancelAllHTTPOperations];
    }];
}

或者,如果您使用自己的NSOperationQueue管理您的操作,请改为-cancelAllOperations