// // downloadThumbnailManager.m // 隐私保护 // // Created by xd h on 2024/1/8. // #import "downloadThumbnailManager.h" @interface downloadThumbnailManager () /**检测任务10s后 无反馈重新开始 */ @property (nonatomic, assign) NSInteger taskRenewTime; // @end @implementation downloadThumbnailManager static downloadThumbnailManager * cur_downloadFileShareInstance = nil; +(downloadThumbnailManager *)shareInstance; { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ cur_downloadFileShareInstance = [[downloadThumbnailManager alloc] init]; }); return cur_downloadFileShareInstance; } - (id)init { self = [super init]; if (self) { //[self initManager]; } return self; } //- (void)handlToDownloadThumbnailWith:(NSArray*)Arr //{ // _isPreViewTask = YES; // [self handDataArrFun:Arr]; //} //- (void)handDataArrFun:(NSArray*)Arr{ // if(Arr && Arr.count >0){ // NSLock *lock = [NSLock new]; // [lock lock]; // if (!_waitDownloadTaskArr) { // _waitDownloadTaskArr = [NSMutableArray arrayWithArray:Arr]; // } // else{ // [_waitDownloadTaskArr addObjectsFromArray:Arr]; // } // // [self planToDownloadThumbnailFun]; // [lock unlock]; // } //} //- (void)handlToDownloadThumbnailInDownTableViewWith:(NSArray*)Arr{ // if(_isPreViewTask){ // if (_downloadingTaskArr.count == 0 ) { // [self handDataArrFun:Arr]; // } // else{ // //不处理 // } // } // else{ // [self handDataArrFun:Arr]; // } //} //- (void)planToDownloadThumbnailFun //{ // if (!_downloadingTaskArr || _downloadingTaskArr.count == 0) { // _downloadingTaskArr = [NSMutableArray arrayWithArray:_waitDownloadTaskArr]; // [_waitDownloadTaskArr removeAllObjects]; // } // // [self beginDownloadThumbnailFun]; //} - (void)handlToDownloadOneThumbnailWith:(couldPhoneFileModel*)model { [self beginDownloadThumbnailFun:model]; } - (void)beginDownloadThumbnailFun:(couldPhoneFileModel*)model { self.curDownloadFileModel = model; // if (_downloadingTaskArr.count > 0) { // _curDownloadFileModel = _downloadingTaskArr.firstObject; // } // else{ // if(_waitDownloadTaskArr && _waitDownloadTaskArr.count>0){ // _downloadingTaskArr = [NSMutableArray arrayWithArray:_waitDownloadTaskArr]; // [_waitDownloadTaskArr removeAllObjects]; // [self beginDownloadThumbnailFun]; // } // return; // } //检测本地是否已经下载文件了 NSString *fileName = [self.curDownloadFileModel getFileNameFun]; NSString*pathStr = [cachesFileManager getFilePathWithName:fileName type:DownLoadThumbnail]; NSFileManager *manager0 = [NSFileManager defaultManager]; if([manager0 fileExistsAtPath:pathStr]) { //已经下载过了 [_downloadingTaskArr removeObject:_curDownloadFileModel]; _curDownloadFileModel = nil; //[self beginDownloadThumbnailFun]; return; } self.taskRenewTime = [iTools getNowTimeStamp]; [[NSNotificationCenter defaultCenter] postNotificationName:downloadThumbnailBeginNotification object:_curDownloadFileModel]; } - (void)DownloadFileDoneOneFileFun { // [_downloadingTaskArr removeObject:_curDownloadFileModel]; // _curDownloadFileModel = nil; // [self beginDownloadThumbnailFun]; // self.taskRenewTime = [iTools getNowTimeStamp]; [[NSNotificationCenter defaultCenter] postNotificationName:downloadThumbnailDoneOneNotification object:nil]; } //- (void)checkReDownloadThumbnailFileFun //{ // NSInteger curTime = [iTools getNowTimeStamp]; // // if(self.taskRenewTime == 0){ // return; // } // // if(curTime - self.taskRenewTime < 10){ // return; // } // // if((_downloadingTaskArr && _downloadingTaskArr.count >0) // ||(_waitDownloadTaskArr && _waitDownloadTaskArr.count>0)){ // [self beginDownloadThumbnailFun]; // } //} @end