iOS / macOS 后台断点下载
pod 'PiDownload'
#import <PiDownload/PiDownload.h>
[PiDownloader SharedObject]
[PiDownloader downloadWithIdentifier:@"yourIdentifier" config:yourConfig]
autoStartOnLaunch
: 启动时自动下载上次正在下载或等待下载的内容。默认YES。autoStopOnWWAN
: 当处于WWAN网络时自动停止下载(仅针对iOS适用)。默认YES。autoSaveResumeSize
: 下载时每隔一定大小(byte)自动保存一次(仅针对macOS),<=0表示不保存。默认0。maxDownloadCount
: 同时下载任务的最大数量。默认1。autoStartNextTask
: 自动开始下一个等待的任务。默认YES。[[PiDownloader SharedObject] addTaskWithUrl:@"http://xxx" toLocalPath:@"/xxx/yourLocalPath"]
- (void) application:(UIApplication *)application handleEventsForBackgroundURLSession:(NSString *)identifier completionHandler:(void (^)())completionHandler
{
if ([PiDownloader IsPiDownloaderSessionIdentifier:identifier])
{
PiDownloader *downloader = [PiDownloader DownloaderWithSessionIdentifier:identifier];
if (downloader == nil)
{
downloader = [PiDownloader CreateDownloaderWithSessionIdentifier:identifier];
}
downloader.bgCompletionHandler = completionHandler;
}
}
本库只负责下载,因此只管理未完成的下载任务,已取消或完成的任务回调完成后会直接移除任务。