如果在应用程序进入后台后启动请求,我将无法获得触发的成功/失败块。我仍然可以看到请求成功地到达服务器,但回调从未被触发。
我能够把它归结为这段代码。它从不记录成功或失败。
- (void)applicationDidEnterBackground:(UIApplication *)application {
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:MY_API_PATH parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"SUCCESS!!");
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"FAILURE!!");
}];
}
如果你想知道我为什么需要这样做,那是因为,我需要让应用程序在后台收到推送通知时做出响应。我在那里看到了一些不一致的行为,所以为了简单起见,我拿出了APNS的文章,开始在后台调查AFNetworking的行为,并遇到了这个问题。
我是不是错过了什么?感谢您的帮助!
这里解释了所有内容。。https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html