일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- uisearchbar
- 클론코딩
- 라이징캠프
- 대문자소문자
- UIImageView
- alamofire
- 프로그래머스
- print()
- swift
- API
- 코딩테스트
- Info.plist
- replacesubrange()
- 싱글톤
- github
- map()
- tableView
- components()
- 코드업 파이썬 기초 100제
- uikit
- GIT
- MVC
- Autolayout
- uiimage
- Segue
- IOS
- prefix()
- 알고리즘
- joined()
- xib
- Today
- Total
Daeng iOS
[iOS] Xcode의 info.plist / AppProject 속성 정리 본문
info.plist
번들을 식별하고 구성하는 키-값 쌍을 포함하는 리소스로, 프로젝트의 기본 정보를 설정하고 구성하는 파일이다
-Application Scene Manifest: 앱의 씬 기반 Lifecycle 지원에 대한 정보
-Enable Multiple windows: 여러 scene을 설정할 수 있는지 체크하는 속성
-Scene Configuration: 새 scene을 만들 때 UIKit의 기본 설정값
-Application Session Role: 2가지 역할 (application/external display)
-item 0
-Configuration Name: 설정 이름
-Delegate Class Name: 대신 코드 실행해 줄 클래스 이름
-Storyboard Name: 스토리보드 이름
PROJECT
모든 파일, 리소스, 소프트웨어 빌드에 필요한 모든 정보의 저장소이다.
앱을 구축하는 데 사용되는 모든 요소가 포함되어 있으며, 해당 요소 간의 관계 (relationships)를 유지한다.
project는 target을 하나 이상 포함하며 모든 target에 대한 기본 build setting을 정의한다.
- Info
- Deployment Target: 지원하는 최소 OS버전
- Configurations: 다양한 환경에서 테스트를 하기 위해 추가할 수 있음, 하나의 타겟에 대해 다른 버전의 빌드를 설정
- Localizations: 지원하는 언어(지역) 설정
- Build Settings
- product의 빌드 프로세스에서 수행되어야 할 것들을 담고 있는 변수(Variable)이고, 이 설정은 Xcode를 통해 컴파일러에게 전달된다. project레벨과 target레벨에서의 빌드 세팅이 있는데, 특정 target 레벨에서 명시적으로 override 해 주지 않는 한 project레벨의 빌드 세팅이 같은 프로젝트 내의 모든 target에 적용된다.
→ Project 공통 세팅 / Target 구체적 세팅
TARGET
빌드할 product를 지정하며 프로젝트 또는 workspace의 파일 집합에서 product의 빌드 방법을 지정한다.
target은 project의 빌드 속성을 상속하지만, target level에서 다른 설정들을 지정하여 프로젝트 설정을 재정의(override)할 수 있다.
- General
- Supported Destinations: 지원 대상
- Minimum Deployments: 최소 배포 버전
- Identity: 앱의 카테고리, 이름, 번들 ID, 버전, 빌드 횟수 등 식별 정보
- Deployment Info: 기기 방향, 상태바 스타일 등 앱을 배포할 때 필요한 항목 설정
- App Icons and Launch Screen: 앱 아이콘 및 런치 스크린 설정
- Supported Intents: SiriKit와 상호작용을 할 때 필요한 Intests를 추가
- Frameworks, Libraries, and Embedded Content: 필요한 프레임워크나 라이브러리를 사용할 때 추가
- Development Assets: product에는 넣지않고 development 단계에서만 쓸 Assets을 넣는 곳
- Signing & Capabilities (백그라운드 / Notification …)
- Signing: 팀, 번들 아이디 등을 설정하는 곳으로 앱 배포, 다른 서비스 사용시에 반드시 필요
- Info
파일 유형 및 서비스 정보 추가할 수 있다
앱과 관련된 속성, 앱이 만들거나 열 수 있는 파일 유형, OS X의 경우 앱에서 제공하는 서비스가 표시된다- Custom iOS Target Properties: 사용자 지정 대상 속성
- Document Type: 앱에서 만들고 편집 가능한 문서 유형 지정하고 iOS 또는 Mac OS에서 해당 문서 유형에 대해 표시되는 사용자 정의 아이콘을 제공
- Exported Type Identifiers / Imported Type Identifiers : 앱에서 내보내거나 가져올 수 있는 모든 파일 유형에 대해 내보내고 가져온 UTI를 추가
- URL Types: 사용자 지정 프로토콜을 사용하여 다른 앱과 데이터를 교환하기 위한 사용자 지정 스키마 지정 가능
- Build Settings
프로젝트를 구축하는 동안 빌드 시스템의 동작에 영향을 미치는 옵션이 표시된다. target에서 지정하지 않으면 project에서 설정할 값이 그대로 반영된다.
빌드되는 방법을 설정하는 곳, 아주 중요하고 민감한 값이라 이 값을 설정하는 것에 따라 생산성에 큰 차이가 생길 수도 있고, 알수 없는 오류가 발생할 수가 있다.
build Setting의 값은 너무나도 많아서 각각의 의미 파악이 어렵다. 따라서 모르는 값은 선택한 후 Xcode의 우측 패널 - Quick Help를 열어보며 바뀌었을 때 어떤 변화가 있을지 알아본 후 바꾼다. - Build Phases
빌드 시 수행하는 작업들 설정하는 곳으로 Compile sources(빌드 할 때 컴파일 할 소스 코드 목록), Copy bundle resources(PRODUCT에 리소스 복사) 등이 있다. - Build Rules
빌드 프로세스 중에 특정 유형의 파일을 처리할 때 빌드 시스템이 사용하는 규칙을 설정한다.
https://developer.apple.com/library/archive/featuredarticles/XcodeConcepts/Concept-Targets.html
'IOS > 기타' 카테고리의 다른 글
[iOS] AutoLayout 정리 (0) | 2022.11.04 |
---|