我的应用程序得到一个静默推送,然后使用 AFNetworking 在后台执行一些 http 请求,但它没有进入完整的块,代码是:
AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] init];
[manager GET:urlString
parameters:nil
success:^(NSURLSessionDataTask *task, id responseObject) {
NSLog(@"response objece:%@", responseObject);
}
failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"error:%@", error);
}];
然后我发现也许我可以使用 NSURLSessionConfiguration 来配置会话:
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration backgroundSessionConfiguration:@"com.company.backgroundDownloadSession"];
AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:configuration];
[manager GET:urlString
parameters:nil
success:^(NSURLSessionDataTask *task, id responseObject) {
NSLog(@"response objece:%@", responseObject);
}
failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"error:%@", error);
}];
但 AFNetworking 崩溃说:“由于未捕获的异常‘NSGenericException’而终止应用程序,原因:‘后台会话不支持数据任务。’ 我应该怎么办?我感谢你的帮助!