Info.plist
developer.apple.com/documentation/bundleresources/information_property_list
Info.plist >>
속성에대한 정보들을 key - value 형태로 저장한 리스트 파일이다. 코드 형태로는 xml형식으로 볼 수 있다. key-value 쌍은 시스템이 연결된 번들을 해석하는 방법을 지정한다. key-value 쌍은 번들에 대한 것도 있지만, 다른 일부는 번들이 나타내는 앱, 프레임 워크 또는 기타 항목 을 구성한다. 일부 키는 필수이고, 다른 키는 필요하다면 상세화 한다.
bundle: 덩어리, 패키지
번들ID라는 용어는 같은데 형태가 2가지
- 프로비저닝 포탈에서 App Id의 번들ID
프로비저닝 포탈에 등록하는 AppId. 한 개 아이디로 다수의 앱을 등록 할수 있음. 앱 Group I라고 생각하면 된다. 한번 등록하면 수정 절대 불가능.
- Xcode와 AppStore의 번들ID
Xcode와 AppStore의 번들ID는 동일. 동일하지 않으면 등록이 안됨.
Xcode는 info.plist 에서 Bundle Identifier에 이것을 입력
Core Foundation
✔️Localization native development region CFBundleDevelopmentRegion : 번들의 주 언어 또는 주 지역
✔️Executable file CFBundleExecutable : 번들의 실행 파일 이름
✔️Bundle identifier CFBundleIdentifier : 번들을 구분하기 위한 유일한 식별키
✔️InfoDictionary version CFBundleInfoDictionaryVersion : Info.plist 구조의 현재 버전
✔️Bundle name CFBundleName:여섯글자 미만으로 이루어진 번들 이름 또는 어플리케이션 이름
✔️Bundle OS Type code CFBundlePackageType:번들 종류를 나타내는코드
✔️Bundle versions string (short) CFBundleShortVersionString:번들의 릴리즈 버전. 짧은 버전.
✔️Bundle version CFBundleVersion:번들의 빌드 버전
Launch Services
✔️Application requires iPhone environment LSRequiresIPhoneOS : iOS에서만 실행할 번들인지
Cocoa
GKShowChallengeBanners : 앱 내에서 배너를 표시할지 여부를 지정.
NSBluetoothPeripheralUsageDescription : 앱에서 블루투스를 사용하는 이유를 지정
NSFaceIDUsageDescription : 앱에서 Face ID를 사용하는 이유를 지정
NSLocationAlwaysUsageDescription : 앱이 사용자의 위치 정보에 항상 액세스하는 이유를 지정
NSMicrophoneUsageDescription : 앱이 기기의 마이크에 액세스하는 이유를 지정
GCSupportedGameControllers : 앱에 허용되거나 필요한 게임 컨트롤러 유형을 지정함.
UIKit
✔️Application Scene Manifest UIApplicationSceneManifest : 앱의 장면 기반 수명주기 지원에 대한 정보 (딕셔너리 형태)
-
Enable Multiple Windows UIApplicationSupportsMultipleScenes : 앱이 두 개 이상의 장면을 동시에 지원하는지 여부를 나타내는 부울 값
-
Scene Configuration UISceneConfigurations : 새 장면을 만들 때 사용할 UIKit의 기본 구성 세부 정보
-
Application Session Role UIWindowSceneSessionRoleApplication : 장치의 기본 화면에 콘텐츠를 표시하고 사용자 상호 작용에 응답하는 데 사용하는 장면
-
Configuration Name UISceneConfigurationName : 장면을 식별하는 데 사용하는 앱별 이름
-
Class Name UISceneClassName : UIKit에서 인스턴스화 할 장면 클래스의 이름
-
Delegate Class Name UISceneDelegateClassName : UIKit이 인스턴스화하고 장면 델리게이트 객체로 사용하도록하려는 앱별 클래스의 이름
-
Storyboard Name UISceneStoryboardFile : 장면의 초기 사용자 인터페이스를 포함하는 스토리 보드 파일의 이름
-
-
External Display Session Role UIWindowSceneSessionRoleExternalDisplay : 외부 연결 디스플레이에 콘텐츠를 표시하는 데 사용하는 장면 (구성은 위의 4가지와 같음)
-
✔️Application supports indirect input events UIApplicationSupportsIndirectInputEvents : 앱이 일반적으로 간접 입력 메커니즘을 지원함을 나타내는 값. 애플리케이션에 대한 간접 입력 채택을 용이하게하기위한 호환성 향후 릴리스에서는이 새로운 동작이 기본값이되며, 이 키는 더 이상 참조되지 않음.
✔️Launch screen interface file base name UILaunchStoryboardName : 앱의 시작 이미지를 생성 할 스토리 보드의 파일 이름. 스토리 보드없이 앱의 시작 화면을 구성하려면 대신 UILaunchScreen을 사용
✔️Main storyboard file base name UIMainStoryboardFile : 앱의 기본 스토리 보드 파일 이름
✔️Required device capabilities UIRequiredDeviceCapabilities : 앱을 실행하는 데 필요한 기기 관련 기능
-
armv7 : armv7 명령어 세트 또는 32/64 비트 범용 앱용 컴파일.iOS 3.1 이상에서 사용 가능
-
auto-focus-camera : 장치 스틸 카메라의 자동 초점 기능. 앱이 매크로 사진을 지원하거나 특정 이미지 처리 작업을 수행하기 위해 더 선명한 이미지가 필요한 경우 사용. iOS 3.0 이상
-
gps : 위치 추적을위한 GPS (또는 AGPS) 하드웨어. 이 값을 포함하면 location-services 값도 포함해야함
-
microphone : 마이크를 제공하는 내장 마이크 또는 액세서리
-
front-facing-camera : 전방 카메라. 인스턴스 의 속성을 사용하여 장치의 카메라를 선택
-
camera-flash : 카메라 플래시.
✔️Supported interface orientations UISupportedInterfaceOrientations : 만든 앱이 지원하는 인터페이스 오리엔테이션들.
-
Portrait (bottom home button) UIInterfaceOrientationPortrait : 전면 카메라가 상단에있는 세로 모드의 디스플레이를 지원
-
Portrait (top home button) UIInterfaceOrientationPortraitUpsideDown : 디스플레이를 지원하지만 거꾸로되어 있으며, 전면카메라가 하단 위치.
-
Landscape (left home button) UIInterfaceOrientationLandscapeLeft : 전면 카메라가 왼쪽에있는 가로 모드의 디스플레이를 지원
-
Landscape (right home button) UIInterfaceOrientationLandscapeRight : 전면 카메라를 오른쪽에두고 가로 모드의 디스플레이를 지원
✔️Supported interface orientations (iPad) : 위와 같음 아이패트 용 인터페이스 오리엔테이션.
'🌙 iOS 스터디 > Xcode' 카테고리의 다른 글
[Xcode] Project editor - 프로젝트 편집기 (0) | 2021.01.25 |
---|---|
[xcode] Storyboard objects 정리 (0) | 2021.01.24 |
[xcode] HeaderView있는 CollectionView 애플 뮤직 앱 (0) | 2021.01.20 |
[xcode] CollectionView로 Animation기능을 추가한 원피스 현상금 앱 (0) | 2021.01.20 |
[Xcode] MVVM을 이용하여 TableView로 구성한 원피스 현상금 앱 (0) | 2021.01.15 |