Да, можно получить фотографии с альбома "Люди" на iPhone, используя iOS приложение. Существует несколько способов достичь этой цели, и я расскажу о двух наиболее распространенных способах.
1. Использование фреймворка Photos:
Фреймворк Photos в iOS предоставляет удобные средства для доступа к фотографиям и видео на устройстве. Для получения фотографий с альбома "Люди" вы можете использовать следующий код:
import Photos func fetchPeopleAlbumPhotos() { let fetchOptions = PHFetchOptions() let albumName = "Люди" fetchOptions.predicate = NSPredicate(format: "title = %@", albumName) let fetchResult = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions) guard let peopleAlbum = fetchResult.firstObject else { print("Альбом с именем (albumName) не найден.") return } let fetchOptions2 = PHFetchOptions() let sortDescriptor = NSSortDescriptor(key: "creationDate", ascending: true) fetchOptions2.sortDescriptors = [sortDescriptor] let fetchResult2 = PHAsset.fetchAssets(in: peopleAlbum, options: fetchOptions2) for index in 0..<fetchResult2.count { let asset = fetchResult2.object(at: index) // Делайте что-то с asset, например, получайте его изображение или информацию } }
2. Использование UIImagePickerController:
Image Picker Controller (UIImagePickerController) - это предопределенный контроллер, который позволяет пользователю выбрать изображение из фото-библиотеки. Вы можете настроить его, чтобы пользователь мог выбрать только фотографии из альбома "Люди". Вот пример кода:
import UIKit class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate { // ... fileprivate let imagePicker = UIImagePickerController() // ... func showImagePicker() { guard UIImagePickerController.isSourceTypeAvailable(.photoLibrary) else { print("Фото-библиотека недоступна.") return } imagePicker.sourceType = .photoLibrary imagePicker.delegate = self imagePicker.mediaTypes = [kUTTypeImage as String] let albumName = "Люди" let fetchOptions = PHFetchOptions() fetchOptions.predicate = NSPredicate(format: "title = %@", albumName) let fetchResult = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions) if let peopleAlbum = fetchResult.firstObject { imagePicker.assetCollectionSubtypes = [peopleAlbum.assetCollectionSubtype.rawValue] } present(imagePicker, animated: true, completion: nil) } // Обработчик выбора изображения - UIImagePickerControllerDelegate func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) { guard let selectedImage = info[.originalImage] as? UIImage else { dismiss(animated: true, completion: nil) return } // Обрабатывайте выбранное изображение dismiss(animated: true, completion: nil) } // ... }
Данные способы позволяют получить фотографии с альбома "Люди" на iPhone, и вам остается только выбрать наиболее подходящий вариант для ваших потребностей и интегрировать его в свое приложение iOS.