Xcode 구성

Navigator area - 프로젝트의 다양한 부분에 빠르게 액세스 가능하다.

Editor area - 소스 코드, 사용자 인터페이스 및 기타 리소스를 편집할 수 있다.

Utility area - 선택한 품목에 대한 정보와 기성품 자원에 대한 액세스를 제공한다. 두 부분으로 되어 있다.

  • 관리자 창 : 네비게이터 또는 편집 영역에서 선택한 항목에 대한 정보를 보고 편집한다.
  • 라이브러리 창 : 사용자 인터페이스 요소, 코드 스니펫 및 기타 리소스에 액세스 할 수 있다.

Toolbar - 앱 빌드, 실행, 진행 상황 살피기, 작업 환경 구성이 가능하다.


프로젝트 구성 파일

AppDelegate - 앱의 실행 주기를 관리하는 파일, 앱을 실행하거나 종료 또는   백그라운드를 실행할 때 하는 일 관리

SceneDelegate - 아이패드에서 생긴 멀티 윈도우와 관련하여 생성되는 파일

ViewController - 뷰에서 처리하는 내용을 담은 파일, 뷰 하나당 파일 하나씩 매칭

Main.storyboard - 앱의 내용을 시각적으로 화면 구성을 통해 보여주는 파일

Assets.xcassets - 앱의 아이콘을 보관하는 장소, 이미지를 넣어주면 이미지 앱아이콘 생성

LaunchScreen.storyboard - 앱이 실행될 때, 잠시 나타나는 스플래시 화면을 만드는  스토리보드

info.plist - 앱이 실행되는데 필요한 정보를 저장하는 파일


 

Info.plist
Project TARGET 항목 중 Info. 이곳에서 더 많은 Info.plist 내용을 확인하고 수정가능하다. 밑에서 살펴볼 예정이다.

Info.plist 구성

Bundle

  • 실행 가능한 코드와 코드가 사용하는 자원을 포함하고 있는 디렉토리
  • info.plist, assets, string 파일 등 소유
  • framework bundle은 dynamic library에서 사용하는 코드와 자원을 포함

Bundle name - 번들 이름

Bundle identifier - 번들의 고유 식별자

InfoDictionary version - Info.plist 버전

Main storyboard file base name - 스토리보드 리소스 파일 이름

Bundle version - 번들 버전

Launch screen interface file base name - 런치 스크린(시작 화면) 파일 이름

Executable file - 번들의 실행 파일 이름

Application requires iPhone environment - 앱이 ios에서 실행되어야 하는지 여부를 나타내는 Bool 값(기본적으로 YES 값)

Supported interface orientations (iPhone) - iPhone 앱에서 지원하는 인터페이스 방향

Application supports indirect input events - 앱이 일반적으로 간접 입력 메커니즘을 지원하는가를 나타내는 Bool 값

Application Scene Manifest - Scene 생명주기 관련 정보 설정

  • Enable Multiple Windows: 여러 Scene을 설정할 수 있는지 체크하는 속성
  • Scene Configuration: 새 Scene을 만들 때, UIKIT의 기본 설정값을 설정
    • Application Session role : 역할(Application / External Display)
      • Configuration Name: 설정 이름
      • Delegate Class Name: 코드 실행할 클래스 이름
      • Storyboard Name: 스토리보드 이름

Bundle OS Type code - 번들 타입(앱: APPL, 프레임워크: FMWK, 번들: BNDL)

Localization native development region - 언어 ID로 번들의 디폴트 언어 및 지역

Supported interface orientations (iPad) - 아이패드 앱에서 지원하는 인터페이스 방향

Bundle version string (short) - 번들의 배포 및 버전 번호


PROJECT 중 Info. 좌측 Navigation area에서 프로젝트를 선택해 확인할 수 있다.

PROJECT

하나 이상의 소프트웨어를 만드는 데 필요한 모든 파일, 리소스, 정보를 위한 저장소. 프로젝트는 모든 타겟에 대한 기본 빌드 설정을 정의

 

Info

Deployment Target: ios 점유율을 참고하여 ios 타겟을 설정한다.

Configuration: Debug, Release 지원. 테스트에 사용

Localization: 로컬라이징 하고 싶은 언어를 설정할 수 있다.

 

PROJECT 중 Build Setting

 

Build Settings - project.pbxproj 파일에 들어있다.

Basic/Customized/All - 기본 설정, 커스토마이징한 설정, 전체 설정을 볼 수 있다.

전체 통일성을 위해 Target Build Setting보다 Project Build Setting을 이용하는 것이 좋다.

 

PROJECT 중 Package Dependencies

Packages Dependencies - Swift package를 추가할 수 있다.


TARGET

TARGET

Build를 실행해 생성되는 최종 제품

 

General - 일반 설정. 기본적인 설정(버전, 타겟 디바이스, 인터페이스 방향 등)이 가능하다.

Signing & Capabilities - Apple 기술(iCloud, Maps 등)을 앱에 추가할 수 있다.

Resource Tags - 주문형 리소스를 사용해 필요할 때만 다운로드가 가능하게 할 수 있다. 이를 통해 더 작고 더 빠르고 더 풍부한 앱을 만들 수 있다.

Info - 앱과 관련된 속성, 앱이 만들거나 열수있는 파일 유형 표시

 

[출처]

https://roniruny.tistory.com/122

https://zeddios.tistory.com/706

https://aimreach.tistory.com/45

https://chobikim.tistory.com/22?category=1030063

https://xcodebuildsettings.com

https://developer.apple.com/documentation/xcode#//apple_ref/doc/uid/TP40010215-CH32-SW1

https://developer.apple.com/library/archive/featuredarticles/XcodeConcepts/Concept-Targets.html

반응형

'ios' 카테고리의 다른 글

스토리보드엔 무엇이 있을까? + Auto Layout  (0) 2022.08.01

+ Recent posts