Я создаю приложение с кнопкой, которая делает снимок экрана. Теперь я хочу сохранить все снимки экрана, сделанные в этом приложении, в альбоме приложения с тем же именем. Я уже знаю, как создать альбом только в первый раз, когда приложение открывается с кодом ниже. Я создаю свой альбом с фреймворком Photos, например:
-(void)createAppAlbum
{
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
PHAssetCollectionChangeRequest *changeRequest = [PHAssetCollectionChangeRequest creationRequestForAssetCollectionWithTitle:@"App Album Name"];
albumPlaceholder = changeRequest.placeholderForCreatedAssetCollection;
}
completionHandler:^(BOOL success, NSError *error) {
if (success) {
fetchResult = [PHAssetCollection fetchAssetCollectionsWithLocalIdentifiers:@[albumPlaceholder.localIdentifier] options:nil];
assetCollection = fetchResult.firstObject;
}
else {
NSLog(@"Error creating album: %@", error);}
}];
}
Итак, мое приложение создает альбом с именем «Имя альбома приложения». Я могу сделать снимок экрана и сохранить его в своем новом альбоме с помощью такой кнопки:
-(IBAction)screenshot:(id)sender
{
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, [UIScreen mainScreen].scale);
else
UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
PHAssetChangeRequest *assetChangeRequest = [PHAssetChangeRequest creationRequestForAssetFromImage:image];
PHAssetCollectionChangeRequest *assetCollectionChangeRequest = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:assetCollection];
[assetCollectionChangeRequest addAssets:@[[assetChangeRequest placeholderForCreatedAsset]]];
} completionHandler:^(BOOL success, NSError *error) {
if (!success) {
NSLog(@"Error creating asset: %@", error);
}
}];
}
В случае, если я покину этот viewController и вернусь позже, я хочу найти альбом, который я уже создал, и сохранить еще один снимок экрана в том же альбоме, потому что я не хочу создавать новый каждый раз, когда я вхожу в этот контроллер представления.
Итак, мой вопрос: как мне получить альбом, который я создал в первый раз, по имени, а затем сохранить новые снимки экрана.