Свойство «актив» AVPlayerItem всегда равно нулю в iOS 4.2

Согласно документации Apple, свойство «актив» объекта AVPlayerItem должно быть доступно и возвращать допустимый объект в iOS 4.0 и более поздних версиях. Я обнаружил, что в iOS 4.2 свойство «актив» объекта AVPlayerItem всегда равно нулю. Пример кода:

CMTime theDuration = kCMTimeInvalid;
AVPlayerItem* theItem = anAVPlayer.currentItem;
AVAsset* theAsset = nil;

if ([AVPlayerItem instancesRespondToSelector:@selector(duration)]) {
    // On iOS 4.3 we get here...
    theDuration = [theItem duration];
} else if ([AVPlayerItem instancesRespondToSelector:@selector(asset)]) {
    // On iOS 4.2 we get here...
    theAsset = [theItem asset];

    if (theAsset) {
        // Unfortunately, we do not get here as theAsset is nil...
        theDuration = [theAsset duration];
    }
}

Кто-нибудь еще видел это?


person Tom S.    schedule 04.09.2011    source источник


Ответы (1)


Я могу подтвердить, что в моем случае на iPad 4.2.1 это свойство действительно имеет значение. На этом снимке экрана мой отладчик сидит на рассматриваемой строке.

введите здесь описание изображения

person Ben Scheirman    schedule 13.09.2011