I’ve mentioned a number of libraries that make networking with Swift easier such as the popular AlamoFire library.
Here’s a Swift based library submitted ny nghialv that provides a nice clean syntax for file uploading and downloading with a number of neat features called Transporter.
With Transporter you can upload/download concurrently and sequentially in the background, pause/resume transfers, and support for progress tracking.
This code snippet from the readme shows some example uses of Transport:
let fileUrl = NSURL(fileURLWithPath: path!)!
let task = UploadTask(url: "http://server.com", file: fileUrl)
.progress { sent, total in
let per = Double(sent) / Double(total)
println("uploading: (per)")
}
.completed { response, json, error in
println("completed")
}
Transporter.add(task1 ||| task2 ||| task3) // concurrent tasks
.progress { bytes, total in
let per = Double(bytes) / Double(total)
println("concurrent tasks: (per)")
}
.completed { alltasks in
println("task1, task2, task3: completed")
}
.add(task4 –> task5 –> task6) // sequential tasks
.progress { bytes, total in
println("serial tasks")
}
.resume()
You can find Transporter on Github here.
A nice library for working with downloads.
Original article: Open Source Swift Library For Uploads/Downloads With Concurrency, Background Support And More
©2015 iOS App Dev Libraries, Controls, Tutorials, Examples and Tools. All Rights Reserved.