I am trying to develop an application which would download images (from a photography site) and create a ALAsset for each image and then place them under a new ALAssetsGroup.
I am able to create a new Album (ALAssetsGroup) and download data from the website. However i am a bit stuck on how to create the new ALAsset.
I have tried is as follows
ALAsset *asset = [[[ALAsset alloc] init] autorelease];
NSDictionary *metadata = [NSDictionary dictionaryWithObjectsAndKeys:p.id, @"id", p.thumbnail_url, @"thumbnail_url", p.photo_url, @"photo_url", nil];
[asset setImageData:data metadata:metadata completionBlock:^(NSURL *assetURL, NSError *error) {
ESLog(@"Asset %@ created error:%@", assetURL, error);
[group addAsset:asset];
}];
However I get prints where both the assetURL and error is empty.
2012-04-15 02:58:06.850 XXXXXX.com[5966:c607] Asset (null) created error:(null)
It would be great if someone can suggest how i can create a new Asset in an Album
you cant create a new ALAsset like that.
What you need to do is save you image data to the Photo-Library using the method:
The completion block will return the NSURL for the new created asset. Using the method
with the NSURL will return you the ALAsset instance of the newly created asset.
Cheers.
Hendrik