[英]Network lost on screen lock unlock
使用简单的AFNetworking
下载操作遇到了一个非常奇怪的问题,甚至尝试了简单的NSURLConnection
操作,如果保持应用程序运行,则连接失败,然后锁定屏幕然后再解锁。 虽然在background
工作正常。
任何人遇到NSURLConnection
类似问题都想分享一些解决方案吗?
谢谢。
它看起来像一个iOS错误。 很奇怪,但是锁屏操作会以某种方式影响NSURLSession
,从而使其停止工作并返回NSURLErrorNetworkConnectionLost
。 因此,在我的应用程序中,我放弃了共享会话。 我要么为每个请求使用一个新的会话对象,要么(每次需要保持一个会话时)每次解锁屏幕时都重新创建它。 而且有效。 对于AFNetworking
或在NSURLSession
之上工作的任何其他第三方库的用户NSURLSession
,情况当然更难。 您需要更正库的代码,这绝对不是一件好事,但我认为别无选择
非常有用Andrey Chernukha在我的案例中,发现您不必每次都重新创建新会话。 我最终使用数组保存了正在运行的NSURLSessionDataTasks,并在手机解锁后恢复了它们。
脚步:
我创建了数组NSMutableArray * dataTasksToResume
在-(void)applicationWillResignActive:(UIApplication *)application我将所有任务保存到dataTasksToResume数组
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.