В моем приложении, когда вы загружаете contentEditingInput
, пользователь может выбрать новый актив, поэтому я попытался убить предыдущий запрос перед тем, как начать новый. К сожалению, cancelContentEditingInputRequest:
не работает, и я все еще получаю прогресс, и блок завершения запускается, когда загрузка выполнена. self.asset
и self.requestId
ожидаемые значения. Проблема возникает при загрузке актива из iCloud. Я использовал API неправильно?Отменить запрос на редактирование контента
if(self.requestId) {
[self.asset cancelContentEditingInputRequest:self.requestId];
}
PHContentEditingInputRequestOptions *options = [PHContentEditingInputRequestOptions new];
options.networkAccessAllowed = YES;
options.progressHandler = ^(double progress, BOOL *stop) {
// update UI
};
self.asset = newAsset;
self.requestId = [self.asset requestContentEditingInputWithOptions:options completionHandler:^(PHContentEditingInput *contentEditingInput, NSDictionary *info) {
self.requestId = 0;
// handle content editing input
}];