Получить ReferenceURL после сохранения изображения с помощью UIImageWriteToSavedPhotosAlbum()

Я хочу получить referenceURL к изображению, которое я сохранил в фотопленке с помощью UIImageWriteToSavedPhotosAlbum(). iOS 4.1 или выше может сделать это легко с помощью AssetLibrary.

ALAssetsLibraryWriteImageCompletionBlock completionBlock = ^(NSURL* url, NSError* error) {
    if (error == nil) {
        savedURL = url;
    }
};    
UIImage * originalImage = [info objectForKey:UIImagePickerControllerOriginalImage];
NSMutableDictionary * metadata = (NSMutableDictionary *)[info objectForKey:UIImagePickerControllerMediaMetadata];  
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeImageToSavedPhotosAlbum:originalImage.CGImage
                             metadata:metadata
                      completionBlock:completionBlock];

Но я не могу найти разумный способ в случае более ранней версии iOS, где единственным способом сохранения изображения в библиотеку камеры является UIImageWriteToSavedPhotosAlbum (). Один из способов, с помощью которого я думаю, - просмотреть сохраненное изображение с помощью ALAssetsGroup и т. Д. Это не очень хорошо для меня, а помогает только iOS 4.0.

Заранее спасибо,

Kiyo

1 ответ

Вместо этого используйте writeImageToSavedPhotosAlbum:

[library writeImageToSavedPhotosAlbum:[originalImage CGImage] orientation:(ALAssetOrientation)[originalImage imageOrientation] completionBlock:^(NSURL *assetURL, NSError *error){  
    if (error) {  
        NSLog(@"error");  // oops, error !
    } else {  
        NSLog(@"url %@", assetURL);  // assetURL is the url you looking for 
    }  
}];  
Другие вопросы по тегам