AVURLAsset loadValuesAsynchronouslyForKeys, синхронная версия? - PullRequest
1 голос
/ 02 июня 2011

есть ли способ загрузить AVURLAsset синхронно? Мой сценарий - это тот, который мне нужен для загрузки активов в фоновом режиме при отображении другого представления и перехода к представлению, отображающему AVPlayer, когда активы готовы к воспроизведению. Не раньше.

Я попытался загрузить асинхронный вызов и вызвать метод делегата, чтобы сказать: «активы готовы, вы можете показать следующее представление», но если я получу предупреждение mem до этого, представления, содержащие ресурсы в фоновом режиме, будут освобождены до того, как они закончат загружаться ... так что я никогда не получу делегатский вызов. Вот почему я предпочитаю делать это синхронно.

Есть идеи?

1 Ответ

1 голос
/ 22 августа 2011

Я не уверен на 100%, что понимаю, к чему вы клоните, но я считаю, что вы должны просто использовать [AVURLAsset commonMetadata] или [AVURLAsset metadataForFormat:[[AVURLAsset availableMetadataFormats] lastObject]], а затем показать свое мнение после загрузки этой информации. Эти методы возвращают массив AVMetadataItem s, который вы довольно легко сможете пройти с помощью цикла for. Извините, если это было не то, что вы искали.

...