info.plist

 

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

-> 실행 패키지에 관한 필수 설정 정보가 포함되어 있다. 시스템은 이 키와 값을 사용해 앱과 앱의 설정을 가져온다.모든 앱은 info.plist파일을 갖고 있다. 데이터를 구분하기 위한 키(Key)와, 실제적인 데이터가 들어가는 값(Value)으로 구분되어 있다.

 

info.plist

 

참고 자료

https://baechukim.tistory.com/17

 

[iOS] info.plist란?

Info.plist = Information Property List Files Info.plist파일은 실행 패키지에 관한 필수 설정 정보가 포함된 구조화된 텍스트 파일입니다. 일반적으로 유니코드 UTF-8로 인코딩되며 내용은 XML을 사용합니다...

baechukim.tistory.com


 

AppProject 속성

1. PROJECT

1-1. Info

Deployment Target

: Minimum OS 지원 버전이다. 앱에서 어떤 기능을 사용할 것인지에 따라 Deployment Target이 달라질 수 있다.

즉, 프로젝트에서 사용할 기능의 최소버전의 iOS를 확인한 뒤 Deployment Target을 설정하면 된다.

 

ios 점유율 확인 사이트

https://developer.apple.com/kr/support/app-store/

 

App Store - 지원 - Apple Developer

App Store 사용자는 App Store에서 iPhone, iPad, Mac, Apple TV 및 Apple Watch용 앱을 쉽게 찾고 구입하고 다운로드할 수 있습니다. Apple Developer Program에 등록하여 앱을 디자인 및 개발하고 App Store에 앱을 배포

developer.apple.com


 

Configurations

: 기본적으로 Debug와 Release를 지원한다.

개발 버전, 릴리즈버전, 무료버전, 유료버전, 베타 등 다양한 환경에서 테스트 할 때 사용한다.

 

Build Configuration 추가하는 방법.

https://zeddios.tistory.com/705

 

Xcode Build Configuration 설정하기

안녕하세요 :) Zedd입니다 Build Configuration을 설정해봅시다. Xcode Build Configuration 설정하기 일단 Build Configuration이라는 것을 알아야하는데요, 그냥 직역하면 빌드 구성..?이라고 생각하면 됩니다...

zeddios.tistory.com


Localizations

: 로컬라이징(나라별로 언어를 설정)할 때 사용한다. Base가 영어다.

 

로컬라이징 하는 방법.

iOS ) 왕초보를 위한 로컬라이징 / Localizing Your App

 

iOS ) 왕초보를 위한 로컬라이징 / Localizing Your App

안녕하세요 :) Zedd입니다. 오늘은 로컬라이징!!!!! 저는 영어를 베이스로 만들고 있는데..물론 다 이해가지만 각 나라언어로 보여지면 어떨까 싶어서 이번기회에 로컬라이징을 공부해보려고 합니

zeddios.tistory.com

 

 

참고 자료

https://developer.apple.com/library/archive/featuredarticles/XcodeConcepts/Concept-Projects.html#//apple_ref/doc/uid/TP40009328-CH5-SW1


1-2. Build Settings

project.pbxproj파일 안에서 Build Settings을 저장하고 있다.

하나의 프로젝트에서 개발용 Target과 배포용 Target을 별도로 관리하는 경우가 있는데, 가급적 Target의 빌드설정 수정은 지양.

(두 Target의 빌드설정은 달라야 하는 경우보다 같아야 하는 경우가 더 많기 때문.)

불필요한 Build Settings 변경을 최소화해야 한다.

 

 

참고 자료

https://www.sungdoo.dev/programming/know-your-xcode-build-setting/

 

Xcode에서 Build Setting 제대로 관리하기

Build Setting은 아주 중요하고 민감한 값입니다. 이 값들을 어떻게 설정하느냐에 따라 생산성에 큰 차이가 생길 수도 있고, 심지어는 알 수 없는 런타임 오류가 발생 할 수도 있습니다.

www.sungdoo.dev

 


 

1-3. Swift Packages(SwiftPM)

: 종속성 관리를 위한 공식 도구다.

Cocoapods, Carthage인 3rd Party 툴이 아닌 1st Party다. 그래서 앞으로는 SwiftPM을 적용하는 것이 장기적으로 좋을 것이다.

 

참고 자료

http://minsone.github.io/ios/mac/swift-package-manager-proxy-modular

 

[Swift 5.2][SwiftPM] Swift Package Manager를 이용하여 패키지를 통합 관리하기 - Proxy Module

Swift Package Manager Swift Package Manager (이하 SwiftPM)은 Xcode 11의 기능으로 추가되었습니다. 이에 따라 많은 오픈소스들이 SwiftPM을 지원합니다. 대표적으로 Alamofire, SDWebImage, RxSwift, ReactorKit 등의 오픈소

minsone.github.io

 


2. TARGETS

: 하나의 Target은 하나의 프로덕트다.

한 프로젝트는 여러개의 Target(프로덕트)로 이루어 질 수 있다.

Target별로 빌드 설정을 달리할 수 있다.

Targets에서는 project 내에서 여러개의 target을 만들어서, 하나는 ios 용, 하나는 mac 용으로 제작하거나, 모듈을 하나하나 따로 뺄 수 있게 해준다.

 

빌드할 프로덕트를 정의하고, 프로젝트나 워크스페이스의 파일로부터 빌드되는 지시들을 포함함.(소스파일 등)

 

참고 자료

https://dongminyoon.tistory.com/41

 

[iOS] Xcode Target이란?

이번에 새로운 프로젝트를 보고 "어..? 이 프로젝트는 왜 이렇게 타겟이 많이 분리되어 있지..?"라고 느낌이 들었고, 지금까지 iOS 개발을 해오면서 Xcode 프로젝트에 대한 원론적인 이해(?)가 부족

dongminyoon.tistory.com

https://developer.apple.com/library/archive/featuredarticles/XcodeConcepts/Concept-Targets.html#//apple_ref/doc/uid/TP40009328-CH4-SW1

 

Xcode Target

Xcode Target A target specifies a product to build and contains the instructions for building the product from a set of files in a project or workspace. A target defines a single product; it organizes the inputs into the build system—the source files and

developer.apple.com

https://hyuna-tech.tistory.com/entry/swift-1%ED%83%84-xcode%EB%A1%9C-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EB%A7%8C%EB%93%A4%EA%B8%B0

 

[swift] 1탄 : xcode로 프로젝트 만들기

1. project 생성하기 xcode를 실행하면 제일 처음 뜨는 창은 다음과 같다. 첫번째 항목은 말 그대로 이것 저것을 시도해볼 수 있는 playground이고, 두번째 항목이 프로젝트를 생성하게 해준다. 세번째

hyuna-tech.tistory.com

 


2-1. General

 

General

2-1-1. General - Identify

Display Name : 프로젝트 명.

Bundle Identifier : App Store에 앱 배포시 앱 이름.

Version : (사용자가 보게 될) 나의 앱 버전.

Build : (동일한 버전 내에서) 업데이트를 할 때 설정.


2-1-2. General - Deployment Info

iOS ~ 14.2(iPhone & iPad & Mac) : os버전이 쭉 나오고, 설정하는 버전 이후의 유저만 사용 가능.

Device Orientation : 앱 실행 화면을 가로방향, 세로방향, 두가지 모두 중에 설정 가능.(Portrait : 세로 | Landscape : 가로)

Status Bar style : Default를 추천. (Hide status bar를 체크 → 앱 실행 시 화면 상단의 상태바가 사라짐)


2-1-3. General - App Icons and Launch Images

App Icons Source : Assets.xcassets파일로 이동하며, 상황별 아이콘이 있다. (하나라도 비어 있으면 검수 시 reject당할 수 있다.)

Launch Screen File : 앱 실행 시 나오는 splash 화면.


2-1-4. General - Frameworks, Libraries, and Embedded Content

: 앱에서 쓰이는 라이브러리를 embeded시킬지 or 안시킬지에 대한 설정.

embeded 시킬 시 → 앱에 library가 포함된 채 배포.

embeded 안 시킬 시 → 앱 실행 시에 library 참조.

 


 

2-2. Sigining & Capabilities

 

Signing

: Automatically manage signing을 체크 → 내 인증과 관련된 자료를 Xcode가 알아서 서버에서 가져온다.

 

 


2-3. Info

: HTTP 접속을 허용하거나, 권한 허용에 관한 노티를 줄 때 왜 Push를 해야하는가에 대한 설명을 적는 곳이다.

 

 


2-4. Build Settings / Phases / Rules

Build

: 제품 빌드를 위한 빌드 설정 및 빌드 단계 형태의 지침. 프로젝트의 빌드설정을 상속함.

대부분의 상황에서 설정을 변경할 필요가 거의 없지만, 설정한다면 프로젝트의 빌드 설정을 재정의 할 수 있다.

반응형