본문 바로가기
Apple의 SDK/PhotoKit

[PhotoKit] 3. Asset Retrieval

by lody.park 2024. 8. 3.

Fetching Objects and Requesting Changes

: PhotoKit을 사용하여 Photos 앱의 객체를 가져오고 변경 요청을 하는 방법.

 

PhotoKit에서 Photos 앱의 객체들은 모두 PHObject타입임.

 

  • 이미지, 비디오, 라이브 포토와 같은 에셋 (PHAsset),
  • 앨범이나 순간 모음과 같은 에셋 컬렉션 (PHAssetCollection),
  • 앨범 폴더 또는 ~한 순간 모음의 모음과 같은 컬렉션 리스트 (PHCollectionList)

PHAsset, PHAssetCollection, PHCollectionList읽기 전용이며 변경할 수 없으며 메타데이터만 포함.

 

이 클래스들을 사용하여 지정된 쿼리와 일치하는 객체(PHObject)를 가져옴(fetch).

 

변경을 하기 위해서는 (공유 라이브러리 -> 로컬 )

1) 관심 있는 에셋 또는 컬렉션을 가져와 2) 원시 데이터를 참조하거나 편집

 

변경한 내용을 반영하기 위해서는 (로컬 -> 공유 라이브러리)

1) 변경 요청 객체를 생성하고, 이를 2) Shared PHPhotoLibrary 객체에 명시적으로 커밋

 

이 구조는 같은 Asset을 여러 스레드나 여러 앱 및 앱 확장에서 안전하고 효율적으로 작업할 수 있게 해줌.

 

 

Live Photo 와 같은 특별한 에셋을 다루는 방법도 포함되어 있습니다.

Live Photo는 추가 데이터가 있는 특별한 에셋으로, 앱에서 비디오나 프레임 시퀀스로 다르게 표시할 수 있습니다.

 

PHCollectionList 클래스를 사용하여 사진 앱의 순간 계층에 해당하는 에셋을 찾을 수 있습니다. iCloud 사진이 활성화되어 있을 때, iCloud 계정에서 동일한 모든 기기에서 사용 가능한 콘텐츠를 반영합니다.

 

 

https://developer.apple.com/documentation/photokit/fetching_objects_and_requesting_changes#3030723

 

Fetching Objects and Requesting Changes | Apple Developer Documentation

Get assets, asset collections, and collection lists matching a specified query.

developer.apple.com

 

'Apple의 SDK > PhotoKit' 카테고리의 다른 글

[PhotoKit] 1. PHPhotoLibrary : Shared Photo Library  (0) 2024.08.03
[PhotoKit] 0. PhotoKit 소개  (1) 2024.08.03