다음은 plist 파일에서 백그라운드 스레드 읽기에 비디오를 업로드하는 나의 방법입니다.iOS의 백그라운드 스레드 용 조건부 타이머로 GCD 블록을 만드는 방법은 무엇입니까?
이제 내가 필요한 것은 plist에서 모든 항목을 읽고 첫 번째 블록의 실행을 완료했습니다. 거기에 새로운 항목이 plist 파일에 들어 왔는지 확인하고 싶습니다. 몇 분 후에 startThreadForUpload
어느 누구도 저에게 어떻게 제안 할 수 있습니까? 그것을 실행 해 계속해서 그래서 지금 난 그냥 새로운 변경 가능한 사전에 다시 왜 그냥 PLIST를 읽지 않는다 ...
-(void)startThreadForUpload{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
assetManager =[AssetManager sharedInstance];
NSDictionary *videoListDict= [assetManager getAllVideoFromPlist];
NSArray *videoListKeyArray=[videoListDict allKeys];
if(videoListKeyArray.count!=0)
{
for(NSString *key in videoListKeyArray){
NSData *videoData = [videoListDict objectForKey:key];
Video *vidObject = (Video *)[NSKeyedUnarchiver unarchiveObjectWithData:videoData];
amazonManger=[AmazonManager sharedInstance];
[amazonManger uploadVideoWithVideoName:vidObject.videoName IsImage:NO VideoObject:vidObject];
[amazonManger uploadVideoWithVideoName:vidObject.thumbImageName IsImage:YES VideoObject:vidObject];
}
}
dispatch_async(dispatch_get_main_queue(), ^(void) {
//Stop your activity indicator or anything else with the GUI
//Code here is run on the main thread
[self startThreadForUpload];
// WARNING! - Don't update user interfaces from a background thread.
});
});
}
[self startThreadForUpload]; 완료 블록에서 5 분 동안 지연 후? –
코드를 인라인으로 추가하도록 업데이트되었으므로 희망적으로 접근 방법을 더 잘 설명합니다. – Sam
고맙습니다. 내가 늦게 답장했지만 .. 내 문제는이 문제를 해결하고 해결했습니다. tnaks –