App Bundle
- 개발자가 생성하는 가장 일반적인 유형의 번들
- 어플리케이션의 성공적인 작동에 필요한 모든 것들을 저장한다.
- iOS 냐 macOS 냐에 따라 번들 구조가 다르지만 사용법은 같다.
Bundle
- 3가지 (App Bundle / Framework Bundle / Loadable Bundle) 로 나눌 수 있다.
- Bundle 의 컨텐츠는
Bundle.main
을 사용해서 접근 가능하다.
- 대부분
url(forResource:withExtension:)
메소드를 사용하여 특정 자원의 위치를 알아낼 수 있다.
Bundle.main.url(forResource: "Photo", withExtension: "jpg")
App Bundle 의 파일 유형
- 실행 파일 (executable)
- Info.plist
- 리소스 파일
- 기타 서포트 파일
let bundle = Bundle.main
bundle.bundleURL
bundle.bundleIdentifier
실행 파일
- 모든 응용 프로그램에 존재하는 파일
- 어플리케이션의 메인 Entry Point 와 어플리케이션 타겟에 정적으로 연결된 모든 코드가 포함되어 있다.
Info.plist
- 어플리케이션에 대한 구성 정보를 포함하는 구조화된 파일
- 시스템은 이 파일에 의존하여 어플리케이션 및 모든 관련 파일에 관한 정보를 식별한다.
리소스 파일
- 어플리케이션의 실행 파일 외부에 있는 데이터 파일
- ex. 이미지, 아이콘, 소리, nib 파일, 문자열 파일, 구성 파일 (configuration files), 데이터 파일
- 대부분 특정 언어 또는 지역에 대해 현지화하거나 모든 지역에서 공유할 수 있다. (= 대부분 localized 될 수 있다.)
기타 서포트 파일
- iOS 어플리케이션 번들에 사용자 정의 프레임워크 또는 플로그인을 포함할 수 있다.
참고