TransferManager
interface TransferManager
Cross-platform file transfer manager for background downloads and uploads.
No Ktor dependency — uses platform-native HTTP APIs:
Android:
HttpURLConnectioniOS:
NSURLSessionbackground sessions
val manager = TransferManager.create(context) // platform factory
// Download with progress
manager.download(DownloadRequest(
id = "large-file",
url = "https://example.com/file.zip",
savePath = "/downloads/file.zip",
expectedChecksum = "sha256:abc..."
))
// Observe progress
manager.observeProgress("large-file").collect { progress ->
println("${progress.percentComplete}%")
}
// Upload
manager.upload(UploadRequest(
id = "backup",
url = "https://api.example.com/upload",
filePath = "/data/backup.zip"
))Content copied to clipboard