Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在下载多个文件之前检查文件大小_Objective C_Ios_Nsurlconnection_Uiprogressview - Fatal编程技术网

Objective c 在下载多个文件之前检查文件大小

Objective c 在下载多个文件之前检查文件大小,objective-c,ios,nsurlconnection,uiprogressview,Objective C,Ios,Nsurlconnection,Uiprogressview,我目前正在为我正在构建的应用程序实现更新功能。它使用NSUrlConnection和NSURLConnectionLegate下载文件并将其保存到用户设备 目前,1更新项下载多个文件,但我想使用1 UIProgressView显示多个文件的下载。所以我的问题是,如何获得我要下载的所有文件的预期内容长度?我知道我可以获得传递到didReceiveResponse方法的NSURLResponse对象的预期内容长度,但这只是针对正在下载的文件 非常感谢您的帮助。谢谢。在你的服务器上放一些信息文件怎么样

我目前正在为我正在构建的应用程序实现更新功能。它使用NSUrlConnection和NSURLConnectionLegate下载文件并将其保存到用户设备

目前,1更新项下载多个文件,但我想使用1 UIProgressView显示多个文件的下载。所以我的问题是,如何获得我要下载的所有文件的预期内容长度?我知道我可以获得传递到didReceiveResponse方法的NSURLResponse对象的预期内容长度,但这只是针对正在下载的文件


非常感谢您的帮助。谢谢。

在你的服务器上放一些信息文件怎么样,它实际上会给你总字节数。您可以先加载它,然后再加载文件。然后,您可以从总金额中减去每个文件的加载金额

另一种方法是首先连接到所有文件,然后在收到响应后取消连接。添加所有文件的预期字节,然后以此作为加载文件时显示总进度的基础

#1的缺点是:必须手动跟踪字节


#2的缺点是:即使请求在响应后被取消,请求量也会增加一倍。

使用广泛用于此目的的ASIhttp开源框架, 这里你只需要设置progressview委托,这样它就会不断更新你的进度视图

试试这个

好主意。我认为第一个想法可能是最好的,每次更新都是一个NSDictionary对象,所以我只为内容大小添加一个属性。谢谢