jjzjj

NSUrlSession

全部标签

ios - 如果应用程序从任务管理器中被终止,NSUrlSession 是否继续文件传输?

为了更好地理解NSUrlSession,我尝试了网络上的各种示例(最后一个是thisone)。我希望看到的是:即使触发下载的应用程序被终止(例如,用户通过任务管理器终止),文件下载仍将继续。然而,这似乎并没有发生。这是配置问题还是应用程序终止后后台文件传输不起作用?我认为整个想法是iOS将重启应用程序。 最佳答案 如果系统终止您的应用程序并且您的后台session有事件下载,您的下载将继续并且系统将在下载完成时启动您的应用程序。但是,如果用户强制退出您的应用,所有任务都会被取消。DocumentationforbackgroundS

ios - NSURLSession 优先级

我正在尝试将用于从NSOperationQueue加载文件的旧代码移植到NSURLSession。几乎一切都很好,但我找不到如何设置加载不同任务的优先级。有人知道NSURLSession是否完全支持优先级排序吗?如果是的话,你能告诉我怎么做吗?提前致谢!罗斯特 最佳答案 NSURLSessionTask上有一个属性@propertyfloatpriorityNS_AVAILABLE(10_10,8_0);它的描述说Setsascalingfactorforthepriorityofthetask.Thescalingfactoris

ios - 如何使用 NSURLSession 从 block 中获取数据?

我对这个block有疑问。我试图获取NSURLSessionblock内的数据。这是我的代码-(NSDictionary*)RetrieveData{NSURLSession*session=[NSURLSessionsharedSession];NSURL*url=[NSURLURLWithString:self.getURL];dataList=[[NSDictionaryalloc]init];NSURLSessionDataTask*dataTask=[sessiondataTaskWithURL:urlcompletionHandler:^(NSData*data,NSURL

ios - NSURLSession didFinishDownloadingToURL 找不到临时下载的文件

我在NSURLSession的委托(delegate)方法didFinishDownloadingToURL上遇到了一个奇怪的问题。我要做的第一件事是检查临时下载的文件是否存在:-(void)URLSession:(NSURLSession*)sessiondownloadTask:(NSURLSessionDownloadTask*)downloadTaskdidFinishDownloadingToURL:(NSURL*)location{if(![[NSFileManagerdefaultManager]fileExistsAtPath:[locationpath]]){NSLo

ios - 在文档目录中下载或移动文件异步 - iOS

我正在构建一个iOS应用程序,用户可以在其中下载不同的文件。我正在使用URLSessionDownloadTask和URLSession异步下载文件。下载完成后,目标文件夹默认为tmp/目录。所以,当下载结束时,我需要将临时文件移动到另一个目录。对于图片或歌曲,这只需要1秒甚至更少。但是当文件是视频时例如,最多可能需要15秒。问题为了让用户仍然可以与应用交互,我想让这个移动异步。每次我尝试这样做时,文件管理器都会抛出异常。“CFNetworkDownload_xxxxxx.tmp”couldn’tbemovedto“Downloads”becauseeithertheformerdoe

ios - NSURLSession 后台下载不工作

我正在尝试使用NSURL后台session和nsurlsessiontask下载一些文件。当应用程序在Debug模式下运行时(当设备连接到Xcode时),一切都像魅力一样,当从Xcode拔下设备(iPad)时不起作用。我在iOS9.3.5上使用Xcode7.3.1。我已经花了数周时间追踪这种奇怪的行为,但没有取得任何突破。可能是我缺少一些东西来实现后台下载。最近将Xcode升级到8.1.2,将iOS升级到10.2.1,假设升级可能会解决问题,但事实并非如此。 最佳答案 引用下面的链接并按照步骤操作https://www.appcod

javascript - 使用适用于 iOS 应用程序的 php 在没有网页的情况下加载 URL

不要让它太复杂我有一个通过NSURLSession加载URL的iOS应用程序。该URL是一些php,它回显来自数据库的响应。该响应是一个URL。此时iOS应用程序接收URL作为NSData并将其转换为URL并使用该URL启动一个新的NSURLSession。我想要的是调用/load/execute该URL,而不是先将其回显给iOS应用程序。我尝试了javascript,但这需要加载浏览器窗口,但NSURLSession不会加载浏览器。我想做的事情可行吗?谢谢 最佳答案 在你的php脚本中添加header("location:$url

ios - 在 iOS 中发送 SPDY 请求导致 NSUrlSession 出现 "The request timed out"错误

我的iOS应用程序从nginxHTTP服务器加载图像。在我发送400多个此类请求后,网络“卡住了”,所有后续HTTP请求都会导致“请求超时”错误。只有当我重新启动应用程序时,我才能让图像再次加载。详细信息:我正在使用NSURLSession.sharedSession().dataTaskWithURL向jpeg文件发送四百个HTTPGET请求。请求按顺序发送,一个接一个。请求之间的间隔为10毫秒。使用NSURLSessionDataTask对象的cancel()方法取消每个先前未完成的请求。有趣的是:我只能在HTTPS请求和服务器上启用SPDY时遇到此问题。非安全HTTP请求工作正常

swift - 当我在异步回调中设置一个对象时会发生什么?

从Alamofire页面,Ratherthanblockingexecutiontowaitforaresponsefromtheserver,acallbackisspecifiedtohandletheresponseonceit'sreceived.Theresultofarequestisonlyavailableinsidethescopeofaresponsehandler.Anyexecutioncontingentontheresponseordatareceivedfromtheservermustbedonewithinahandler.我明白了,但是当您尝试设置变

ios - 在 iOS 中计算网络速度。数据较少的往返时间不会告知确切的网络速度

我正在尝试在我的应用程序中计算网络速度,因此我只能上传在这种网络条件下可以上传的数据量。为此,我的计划是:我的应用程序的默认速度可能是(500KB/s)。我的应用程序将发送包含500kb数据的请求。它将监控系统上传数据和获得响应所花费的往返时间。例如,应用程序在5秒内收到200kb数据,那么速度将为(500+200)/5。根据上面的例子,我的请求带宽是140KB/s。我将根据我的带宽计算指数移动平均线。我将根据计算出的平均带宽发送下一个请求。这是我对NSURLSession的实现://InitializingNSURLSession[onetimeonly]letconfigurati