gpt4 book ai didi

ios - Alamofire:如何顺序下载文件

转载 作者:搜寻专家 更新时间:2023-10-30 22:22:20 26 4
gpt4 key购买 nike

我有一系列要下载的视频文件。我正在使用 for 循环来下载它们中的每一个。然而,当循环运行时,所有文件并行下载,这会导致应用程序挂起、UI 卡住、CPU 使用率飙升。

for url in urlArray{
downloadfile(url)
}

我有一个函数可以下载给定 URL 的文件。

func downloadFile(s3Url:String)->Void{ 
Alamofire.download(.GET, s3Url, destination: destination)
.progress { bytesRead, totalBytesRead, totalBytesExpectedToRead in
println(totalBytesRead)
}
.response { request, response, _, error in
println(response)
}
}

我如何更改此设置以使文件不会同时下载?另外,如何检查下载是否完成以便更新我的 UI?

最佳答案

func downloadFile(var urlArray:[String])->Void{
if let s3Url = urlArray.popLast(){
Alamofire.download(.GET, s3Url, destination: destination)
.progress { bytesRead, totalBytesRead, totalBytesExpectedToRead in
println(totalBytesRead)
}
.response { request, response, _, error in
downloadFile(urlArray)
println(response)
}
}
}

swift 3.0:

func downloadFile(urlArray:[String])->Void{
var urlArray = urlArray
if let s3Url = urlArray.popLast(){
Alamofire.download(.GET, s3Url, destination: destination)
.progress { bytesRead, totalBytesRead, totalBytesExpectedToRead in
println(totalBytesRead)
}
.response { request, response, _, error in
downloadFile(urlArray)
println(response)
}
}
}

关于ios - Alamofire:如何顺序下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32193383/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com