iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 在现有的NSURLSession上更改allowCellularAccess大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以通过修改基础NSURLSessionConfiguration来更改现有NSURLSession上的allowsCellularAccess的值?

我想尊重应用程序用户设置的任何更改,而不取消现有请求,如果他们的设备当前连接到WiFi.

解决方法

不会.会话会复制其配置.它没有保留它.在你的情况下我会做的是:

>复制会话的现有配置并更改该标志.
>使用修改的配置创建新会话.
>如果用户使用Wi-Fi,请在旧会话上调用finishTasksAndInvalidate.这将使会话保持足够长的时间以完成任何现有请求,之后它将消失.
>如果用户在移动电话上,请调用invalidateAndCancel,然后等待重启这些任务,直到用户使用Wi-Fi.

此外,您可以在任务上调用cancelByProducingResumeData:然后在具有不同配置的其他会话中重新创建(恢复)它.该任务仍将报告allowCellularAccess的原始配置,但将根据新会话的配置进行操作. (陈旧的报告可能被视为错误.)

大佬总结

以上是大佬教程为你收集整理的ios – 在现有的NSURLSession上更改allowCellularAccess全部内容,希望文章能够帮你解决ios – 在现有的NSURLSession上更改allowCellularAccess所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。