使requestAVAssetForVideo同步

时间:2016-12-07 00:15:56

标签: ios objective-c asynchronous

我从图库中的所有选定视频中获取网址,效果很好。

但我注意到requestAVAssetForVideo异步的方式执行。

之前我通过将requestImageForAsset更改为options:nil

,指定options:option同步方式执行
PHImageRequestOptions *option = [PHImageRequestOptions new];
        option.synchronous = YES;

这就像魅力一样,但它与requestAVAssetForVideo

的形式不同

有没有办法以同步的方式执行requestAVAssetForVideo

[[PHImageManager defaultManager] requestAVAssetForVideo:lAsset
                                                        options:nil
                                                  resultHandler:^(AVAsset *avAsset, AVAudioMix *audioMix, NSDictionary *info) {
            NSURL *url = (NSURL *)[[(AVURLAsset *)avAsset URL] fileReferenceURL];
            NSLog(@"url = %@", [url absoluteString]);
            NSLog(@"url = %@", [url relativePath]);
        }];

2 个答案:

答案 0 :(得分:1)

简短回答:不。

答案很长:

页面顶部的每个Apple documentation here

  

请求表示视频资产内容的AV Foundation对象   和州,要加载异步

答案 1 :(得分:0)

好吧,正如CodeBender说的那样,但这是一种构建同步版本的方法:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
  <li>
    <span class="name">Author 1</span>
    <span class="affiliation">Institution 1</span> 
  </li>
  <li>
    <span class="name">Author 2</span>
    <span class="affiliation">Institution 2</span> 
  </li>
</ul>