ios-下载管理类封装

21 篇文章 0 订阅
#import <Foundation/Foundation.h>

@interface HTTPDownloadManager : NSObject

/**
 *  下载完成列表
 */
@property (nonatomic , strong) NSMutableArray *downloadFinishLists;

/**
 *  正在下载的列表
 */
@property (nonatomic, strong) NSMutableArray *downloadingLists;

/**
 *  单例对象
 *
 *  @return <#return value description#>
 */
+ (instancetype)sharedManger;

/**
 *  添加下载任务
 *
 *  @param url <#url description#>
 */
- (void)addDownloadWithUrl:(NSURL *)url;

/**
 *  判断是否已经下载完成
 *
 *  @return <#return value description#>
 */
- (BOOL)isExistInDownloadFinishListsWithUrl:(NSURL *)url;

/**
 *  判断是否正在下载
 *
 *  @param url <#url description#>
 *
 *  @return <#return value description#>
 */
- (BOOL)isExistInDownloadingListsWithUrl:(NSURL *)url;

@end

#import "HTTPDownloadManager.h"
#import "HTTPDownload.h"

@implementation HTTPDownloadManager

/**
 *  单例对象
 *
 *  @return <#return value description#>
 */
+ (instancetype)sharedManger
{
    
#if 0
    static HTTPDownloadManager *manager = nil;
    
    //对象锁
    @synchronized(self)
    {
        if (!manager)
        {
            manager = [[self alloc] init];
        }
        
        return manager;
    }
#endif
    
    static HTTPDownloadManager *manager = nil;
    
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        manager = [[self alloc] init];
    });

    
    return manager;
}

/**
 *  添加下载任务
 *
 *  @param url <#url description#>
 */
- (void)addDownloadWithUrl:(NSURL *)url
{
   
    HTTPDownload *download = [[HTTPDownload alloc] initWithUrl:url];
    //开始下载
    [download startDownload];
}

@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值