Belirtilen dosyayı (fotoğraf makinesinin rulosundan gelen fotoğrafı) zaman uyumsuz olarak okumak istiyorum ancak benim için çalışmaz.PHAsset içeriği eşzamansız olarak okunamıyor
Değişken tempData
nil
e kadar ben YES
için yapılandırma requestOptionForPhotos.synchronous
değiştirmek alır, sonra her şey tamam, ama bu kod senkron gerçekleştirmek istemiyoruz.
Diğer dosyalarda aynı dosya için istekte bulunarak fotoğrafa erişimi engelleyebiliyor muyum? Ben objektif-c ve iOS programlamasında yeniyim ve nasıl çalıştığını bilmiyorum.
NSURL *assetUrl = [[NSURL alloc] initWithString:filepath];
PHFetchResult *collection = [PHAsset fetchAssetsWithALAssetURLs:[NSArray arrayWithObject:assetUrl] options:nil];
PHImageRequestOptions *requestOptionForPhotos = [[PHImageRequestOptions alloc] init];
requestOptionForPhotos.networkAccessAllowed = YES;
requestOptionForPhotos.synchronous = NO;
__block BOOL isFinished = NO;
__block NSData * tempData = nil;
for(PHAsset *asset in collection) {
[[PHImageManager defaultManager]
requestImageForAsset:asset
targetSize:CGSizeMake(80, 80)
contentMode:PHImageContentModeAspectFill
options:requestOptionForPhotos
resultHandler:^(UIImage *result, NSDictionary *info) {
tempData = UIImagePNGRepresentation(result);
isFinished = YES;
}];
}
Geçerli bir dosya yolu alıyor musunuz? Ayrıca, "koleksiyon" nesnesinde aldığınız herhangi bir veri var mı? –
Evet, bazı veriler ve yollar da geçerli. – siwymilek