5

UIImageWriteToSavedPhotosAlbum()でカメラロールに保存した画像への参照URLを取得したいです。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() である場合、スマートな方法を見つけることができません。私が考える 1 つの方法は、ALAssetsGroup などを使用して保存された画像を見回すことです。これは私にとって賢明ではなく、iOS 4.0 にのみ役立ちます。

前もって感謝します、

きよ

4

1 に答える 1

2

代わりに 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 
    }  
}];  
于 2012-10-06T12:51:44.377 に答える