ios – AFNetworking 2.0 – 当应用程序在后台时,请求不会成功阻止

ios – AFNetworking 2.0 – 当应用程序在后台时,请求不会成功阻止,第1张

概述>我正在为我的项目使用AFNetworking 2.0.我很简单 向服务器发送一些请求,服务器返回一些 JSON 我. >为了测试它,我在成功块中标记了一些调试标记 AFNetworking POST方法.问题是当应用程序在 前景,当应用程序收到服务器的响应时, xCode可以在成功和失败块中的调试标记处停止. 但是当我提出请求时,请将应用程序带到后台(按 主页按钮),调试永远不会进入块. >看起 >我正在为我的项目使用AFNetworking 2.0.我很简单
向服务器发送一些请求,服务器返回一些 JSON
我.
>为了测试它,我在成功块中标记了一些调试标记
AFNetworking POST方法.问题是当应用程序在
前景,当应用程序收到服务器的响应时,
xCode可以在成功和失败块中的调试标记处停止.
但是当我提出请求时,请将应用程序带到后台(按
主页按钮),调试永远不会进入块.
>看起来他们在应用程序处于后台时暂停了,因为
当应用程序再次处于前台时,调试立即进入
块我得到了回应.

我错过了什么吗?因为我希望应用程序接收响应并做一些事情,即使它在后台.
这是我在我的应用中使用的内容:

AFhttpRequestoperationManager *manager = [AFhttpRequestoperationManager manager];NSDictionary *parameters = /*generate the parameters*/;NSURL *filePath = [NSURL fileURLWithPath:@"imagename.png"];[manager POST:@"http://example.com/resources.Json" parameters:parameters constructingBodyWithBlock:^(ID<AFMultipartFormData> formData) {    [formData appendPartWithfileURL:filePath name:@"image" error:nil];} success:^(AFhttpRequestoperation *operation,ID responSEObject) {    NSLog(@"Success: %@",responSEObject);//deBUG here//Told the app to stop the Loading VIEw,save response to DB} failure:^(AFhttpRequestoperation *operation,NSError *error) {    NSLog(@"Error: %@",error);//deBUG here//Told the app to stop the Loading VIEw and try again sometimes}];
解决方法 这是我的坏事.我忘了告诉应用程序在进入后台时继续运行.我将这些代码添加到我的项目中:

uibackgroundtaskIDentifIEr backgroundTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{    [[UIApplication sharedApplication] endBackgroundTask:backgroundTask];}];

当应用程序进入后台时:

[[UIApplicatioz sharedApplication] endBackgroundTask:backgroundTask];
总结

以上是内存溢出为你收集整理的ios – AFNetworking 2.0 – 当应用程序在后台时,请求不会成功阻止全部内容,希望文章能够帮你解决ios – AFNetworking 2.0 – 当应用程序在后台时,请求不会成功阻止所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1010320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存