亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS 使用AFN上傳視頻到服務器示例代碼

2020-07-26 02:50:59
字體:
來源:轉載
供稿:網友

這里介紹用AFN上傳本地拍攝的視頻到服務端。

整體思路:拿到視頻資源,先轉為mp4,寫進沙盒,然后上傳,上傳成功后要記得刪除沙盒中的文件。

壓縮導出視頻

//視頻轉換為MP4//轉碼操作..._hud.mode = MBProgressHUDModeIndeterminate;_hud.labelText = @"轉碼中...";AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:_filePathURL options:nil];NSDateFormatter* formater = [[NSDateFormatter alloc] init];[formater setDateFormat:@"yyyyMMddHHmmss"];_fileName = [NSString stringWithFormat:@"output-%@.mp4",[formater stringFromDate:[NSDate date]]];_outfilePath = [NSHomeDirectory() stringByAppendingFormat:@"/Documents/%@", _fileName];NSArray *compatiblePresets = [AVAssetExportSession exportPresetsCompatibleWithAsset:avAsset];if ([compatiblePresets containsObject:AVAssetExportPresetMediumQuality]) {  MyLog(@"outPath = %@",_outfilePath);  AVAssetExportSession *exportSession = [[AVAssetExportSession alloc]initWithAsset:avAsset presetName:AVAssetExportPresetMediumQuality];  exportSession.outputURL = [NSURL fileURLWithPath:_outfilePath];  exportSession.outputFileType = AVFileTypeMPEG4;  [exportSession exportAsynchronouslyWithCompletionHandler:^{    if ([exportSession status] == AVAssetExportSessionStatusCompleted) {      MyLog(@"AVAssetExportSessionStatusCompleted---轉換成功");      _filePath = _outfilePath;      _filePathURL = [NSURL URLWithString:[NSString stringWithFormat:@"file://%@",_outfilePath]];       MyLog(@"轉換完成_filePath = %@//n_filePathURL = %@",_filePath,_filePathURL);      //獲取大小和長度      [self SetViewText];      [self uploadNetWorkWithParam:@{@"contenttype":@"application/octet-stream",@"discription":description}];    }else{      MyLog(@"轉換失敗,值為:%li,可能的原因:%@",(long)[exportSession status],[[exportSession error] localizedDescription]);      [_hud hide:YES];      [MyHelper showAlertWith:nil txt:@"轉換失敗,請重試"];    }  }];}

開始上傳

- (void)uploadNetWorkWithParam:(NSDictionary*)dict {  MyLog(@"開始上傳_filePath = %@//n_filePathURL = %@",_filePath,_filePathURL);  AFHTTPRequestSerializer *ser=[[AFHTTPRequestSerializer alloc]init];  NSMutableURLRequest *request =  [ser multipartFormRequestWithMethod:@"POST"               URLString:[NSString stringWithFormat:@"%@%@",kBaseUrl,kVideoUploadUrl]               parameters:@{@"path":@"show",@"key":_key,@"discription":dict[@"discription"],@"isimage":@(_isImage)}       constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {           [formData appendPartWithFileURL:_filePathURL name:@"file" fileName:_fileName mimeType:dict[@"contenttype"] error:nil];         if (!_isImage) {    [formData appendPartWithFileURL:_path2Url name:@"tmp" fileName:@"tmp.PNG" mimeType:@"image/png" error:nil];         }       } error:nil];  //@"image/png"  @"application/octet-stream" mimeType  AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];  NSProgress *progress = nil;  NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithStreamedRequest:request progress:&progress completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) {    if (error) {       MyLog(@"request = %@", request );       MyLog(@"response = %@", response );      MyLog(@"Error: %@", error );      [_hud hide:YES];      CXAlertView *alert=[[CXAlertView alloc]initWithTitle:NSLocalizedString(@"Warning", nil)                             message:NSLocalizedString(@"Upload Failed",nil)                        cancelButtonTitle:NSLocalizedString(@"Iknow", nil)];      alert.showBlurBackground = NO;      [alert show];    } else {      MyLog(@"%@ %@", response, responseObject);      NSDictionary *backDict=(NSDictionary *)responseObject;      if ([backDict[@"success"] boolValue] != NO) {        _hud.labelText = NSLocalizedString(@"Updating", nil);        [self UpdateResxDateWithDict:backDict discription:dict[@"discription"]];        [_hud hide:YES];      }else{        [_hud hide:YES];        [MyHelper showAlertWith:nil txt:backDict[@"msg"]];      }    }    [progress removeObserver:self           forKeyPath:@"fractionCompleted"             context:NULL];  }];  [progress addObserver:self        forKeyPath:@"fractionCompleted"         options:NSKeyValueObservingOptionNew         context:NULL];  [progress setUserInfoObject:@"someThing" forKey:@"Y.X."];  [uploadTask resume];}

清除documents中視頻

-(void)ClearMovieFromDoucments{  NSFileManager *fileManager = [NSFileManager defaultManager];  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  NSString *documentsDirectory = [paths objectAtIndex:0];  NSArray *contents = [fileManager contentsOfDirectoryAtPath:documentsDirectory error:NULL];  NSEnumerator *e = [contents objectEnumerator];  NSString *filename;  while ((filename = [e nextObject])) {    MyLog(@"%@",filename);    if ([filename isEqualToString:@"tmp.PNG"]) {      MyLog(@"刪除%@",filename);      [fileManager removeItemAtPath:[documentsDirectory stringByAppendingPathComponent:filename] error:NULL];      continue;    }    if ([[[filename pathExtension] lowercaseString] isEqualToString:@"mp4"]||      [[[filename pathExtension] lowercaseString] isEqualToString:@"mov"]||      [[[filename pathExtension] lowercaseString] isEqualToString:@"png"]) {      MyLog(@"刪除%@",filename);      [fileManager removeItemAtPath:[documentsDirectory stringByAppendingPathComponent:filename] error:NULL];    }  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧洲中文字幕国产精品| 色噜噜狠狠狠综合曰曰曰| 欧美一级电影在线| 国产一区二区三区视频免费| 久久久久久九九九| 日韩欧美综合在线视频| 1769国产精品| 欧美www在线| 午夜精品理论片| 国产在线播放不卡| 久久久精品视频成人| 国产精品精品视频一区二区三区| 国产免费一区二区三区在线观看| 久久国产精品久久久久久久久久| 国产精品普通话| 国产91ⅴ在线精品免费观看| 欧美高清在线视频观看不卡| 日韩精品在线电影| 国产视频综合在线| 一区二区三区 在线观看视| 国产精品中文字幕在线观看| 国产精品中文在线| 久久久久亚洲精品成人网小说| 97婷婷大伊香蕉精品视频| 国产亚洲欧洲高清一区| 亚洲乱码国产乱码精品精天堂| 日韩成人在线视频观看| 欧美一区二区视频97| 性欧美激情精品| 国模gogo一区二区大胆私拍| 亚洲电影免费观看高清完整版在线观看| 成人激情免费在线| 亚洲成人精品久久| 亚洲国产黄色片| 色综合伊人色综合网站| 97精品在线视频| 亚洲激情在线观看视频免费| 亚洲日本中文字幕| 亚洲在线一区二区| 亚洲欧美制服中文字幕| 亚洲精品国精品久久99热一| 国产精品色视频| 亚洲免费视频在线观看| 中文字幕成人精品久久不卡| 国产精品视频网站| 亚洲人av在线影院| 亚洲乱码一区二区| 国产三级精品网站| 欧美黑人狂野猛交老妇| 日韩在线观看免费全集电视剧网站| 日韩精品视频三区| 久久九九有精品国产23| 成人国产在线激情| 久热在线中文字幕色999舞| 欧美精品一本久久男人的天堂| 亚洲一区二区免费| 久久久综合av| 久久久噜久噜久久综合| 亚洲精品一区二区久| 国产成人精品综合| 97免费在线视频| 色与欲影视天天看综合网| 久久亚洲精品小早川怜子66| 亚州成人av在线| 成人做爰www免费看视频网站| 欧美性生交大片免网| 国产欧美日韩丝袜精品一区| 亚洲精选中文字幕| 国产69精品久久久久久| 欧美日韩国产精品一区| 国内偷自视频区视频综合| 久久久亚洲国产天美传媒修理工| 亚洲美女自拍视频| 91在线高清视频| 欧美激情精品久久久久久久变态| 最近2019中文字幕在线高清| 91香蕉电影院| www.午夜精品| 国产成人97精品免费看片| 九九热这里只有在线精品视| 精品国产一区久久久| 欧美成人午夜激情在线| 欧美性猛交xxxx免费看久久久| 国产午夜精品视频免费不卡69堂| 欧美猛男性生活免费| 在线精品播放av| 欧美精品福利在线| 日日骚av一区| 精品久久久久久久久久国产| 亚洲精品美女久久| 亚洲国产成人精品一区二区| 国产成人精品一区二区| 欧美日韩午夜激情| 国产精品爱久久久久久久| 久久综合免费视频影院| 日本精品视频在线观看| 欧美日韩一区免费| 欧美成人精品一区| 日韩美女免费视频| 欧美午夜片欧美片在线观看| 中文字幕亚洲综合久久筱田步美| 国语自产偷拍精品视频偷| 日韩在线观看免费高清| 日韩精品免费在线播放| 亚洲第一福利网站| 午夜精品久久久久久久99热| 亚洲第一福利视频| 欧美高清理论片| 国产a级全部精品| 国产欧美日韩丝袜精品一区| 久久艳片www.17c.com| 成人免费网站在线观看| 久久综合五月天| 欧美精品www| 欧美日韩高清在线观看| 日韩在线视频网站| 51久久精品夜色国产麻豆| 亚洲精品国产成人| 亚洲女人天堂av| 成人黄色av免费在线观看| 尤物99国产成人精品视频| 91日本在线视频| 久久99热这里只有精品国产| 国产99久久精品一区二区 夜夜躁日日躁| 热久久免费国产视频| 亚洲一区二区久久久久久久| 久久成人av网站| 欧美极品美女视频网站在线观看免费| 欧美日韩亚洲国产一区| 国产69精品久久久久99| 欧美福利小视频| 91av免费观看91av精品在线| 亚洲国产成人精品女人久久久| 91精品国产高清自在线| 庆余年2免费日韩剧观看大牛| 国内精品久久久久久久| 日韩成人中文字幕在线观看| 亚洲摸下面视频| 亚洲欧洲在线看| 欧美性xxxx| 5566日本婷婷色中文字幕97| 国产情人节一区| 久久精品男人天堂| 亚洲成人av在线| 亚洲欧美日韩直播| 成人做爽爽免费视频| 国产精品成人在线| 国产视频久久久| 欧美黄网免费在线观看| 日韩在线不卡视频| 亚洲欧美国产日韩中文字幕| 欧美日韩亚洲一区二区三区| 国产女精品视频网站免费| 97在线免费视频| 97成人精品区在线播放| 欧美黑人一区二区三区| 国产精品男人的天堂| 亚洲美女av在线播放| 亚洲激情视频在线播放| 在线观看免费高清视频97| 美女视频久久黄| 久久久免费观看视频| 日韩女优在线播放| 欧美日韩在线视频观看|