1

有没有办法以同步方式加载AVURLAsset? 我的场景是我需要在后台加载资源,同时显示不同的视图,并在资产准备好播放时更改为显示AVPlayer的视图。之前没有。AVURLAsset loadValuesAsynchronouslyForKeys,同步版本?

我试过加载异步并调用委托方法来告诉“资产已准备就绪,您可以显示下一个视图”,但是如果在此之前我收到mem警告,则包含后台资产的视图会获得他们完成加载之前发布...所以我从来没有得到委托电话。这就是为什么我愿意同步做到这一点。

任何想法?

回答

1

我不是100%确定我明白你的目标,但我相信你应该只能使用[AVURLAsset commonMetadata][AVURLAsset metadataForFormat:[[AVURLAsset availableMetadataFormats] lastObject]],然后在加载此信息后显示你的视图。这些方法返回一个AVMetadataItem的数组,你应该很容易用for循环遍历。对不起,如果这不是你要找的。