AVAssetResourceLoadingDataRequest
Используйте AVAssetResourceLoadingDataRequest класс, чтобы запросить данные от ресурса , на который ссылаются AVAssetResourceLoadingRequest экземпляр.
AVAssetResourceLoaderDelegate использование AVAssetResourceLoadingDataRequest класс, чтобы сделать фактическое считывание данных и его методы будет вызван, по мере необходимости, для получения данных для AVAssetResourceLoadingRequest экземпляр.
Когда делегат загрузки ресурса, реализующий AVAssetResourceLoaderDelegate протокол, получает экземпляр AVAssetResourceLoadingRequest как второй параметр делегата resourceLoader:shouldWaitForLoadingOfRequestedResource: метод, это имеет опцию того, чтобы брать на себя ответственность за загрузку ресурса, на который ссылаются. Если это берет на себя ту ответственность путем возврата YEStrue, это должно проверить ли dataRequest свойство AVAssetResourceLoadingRequest экземпляр не nil. Если это не nil, делегату загрузки ресурса сообщают о диапазоне байтов в ресурсе, требующихся базовой системой носителей. В ответ данные предоставлены одним или более вызовами respondWithData: как требуется предоставлять требуемые данные. Данные могут быть предоставлены в инкрементах, определенных делегатом загрузки ресурса согласно удобству или эффективности.
Когда AVAssetResourceLoadingRequest метод finishLoading вызывается, запрос данных считают полностью удовлетворенным. Если весь диапазон байтов, которые требуют, еще не был предоставлен, базовая система носителей предполагает, что длина ресурса ограничивается предоставленным содержанием.
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в OS X v10.9 и позже.
-
Предоставляет данные загружающемуся запросу.
Объявление
Swift
func respondWithData(_data: NSData!)Objective C
- (void)respondWithData:(NSData *)dataПараметры
dataЭкземпляр
NSDataсодержа некоторых или все требуемые байты.Обсуждение
Этот метод может быть вызван многократно на том же экземпляре
AVAssetResourceLoadingDataRequestобеспечить полный спектр запрошенных данных инкрементно. На каждый вызов, значениеcurrentOffsetсвойство обновляется для соответствия предоставленного объема данных.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
requestedLength requestedLengthСвойствоДлину, в байтах, данных требуют. (только для чтения)
Объявление
Swift
var requestedLength: Int { get }Objective C
@property(nonatomic, readonly) NSInteger requestedLengthОбсуждение
Если длина содержания ресурса неизвестна, сумма
requestedLengthиrequestedOffsetсвойства могут быть больше, чем фактическая длина содержания. Когда эта ситуация происходит, приложение должно попытаться обеспечить такое количество запрошенных данных, начинающихся вrequestedOffsetсвойство как ресурс содержит. Приложение должно тогда вызвать любогоAVAssetResourceLoadingRequestэкземплярfinishLoadingметод на успех, илиfinishLoadingWithError:метод, если с ошибкой встречаются во время загрузки.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
requestedOffset requestedOffsetСвойствоПозицию в ресурсе первого байта требуют. (только для чтения)
Объявление
Swift
var requestedOffset: Int64 { get }Objective C
@property(nonatomic, readonly) long long requestedOffsetОбсуждение
Когда все требуемые байты — включая возможное, которые могут быть предоставлены были загружены
contentInformationRequestданные вAVAssetResourceLoadingRequestэкземпляр, содержащий получатель — делегат, должен ответить путем вызоваfinishLoading.Если
requestedOffsetзначение вне длины содержания ресурса,AVAssetResourceLoadingRequestэкземпляр отправляется afinishLoadingсообщение без любых предшествующих вызововrespondWithData:.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
currentOffset currentOffsetСвойствоПозиция в ресурсе следующего байта. (только для чтения)
Объявление
Swift
var currentOffset: Int64 { get }Objective C
@property(nonatomic, readonly) long long currentOffsetОбсуждение
При инкрементной загрузке данных необходимо начать загружаться при этом смещении, возвратив данные путем вызова
respondWithData:метод. Байты до этого значения уже были предоставлены.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
