계속 진행하기 위해이 코드가 실행되기를 기다리고 싶습니다. 그러나이 블록을 assynchronously라고 불렀으므로 어떻게 해야할지 모르겠습니다. ??? 할assetForURL 블록 완료 대기
NSURL *asseturl;
NSMutableArray *tmpListAsset = [[NSMutableArray alloc] init];
ALAssetsLibrary *library = [[[ALAssetsLibrary alloc] init] autorelease];
NSMutableArray *objectsToRemove = [[NSMutableArray alloc] init];
for (NSDictionary *dico in assetsList) {
asseturl = [NSURL URLWithString:[dico objectForKey:@"assetUrl"]];
NSLog(@"asset url %@", asseturl);
// Try to load asset at mediaURL
[library assetForURL:asseturl resultBlock:^(ALAsset *asset) {
// If asset doesn't exists
if (!asset){
[objectsToRemove addObject:dico];
}else{
[tmpListAsset addObject:[asseturl absoluteString]];
NSLog(@"tmpListAsset : %@", tmpListAsset);
}
} failureBlock:^(NSError *error) {
// Type your code here for failure (when user doesn't allow location in your app)
}];
}
이것은 링크 전용 답변이며 원본 기사의 관련 코드와 현대화 (이 답변은 현재 4 년 전이므로)를 모두 향상시켜야합니다. – brandonscript
링크가 깨졌습니다. – diegomen