์ƒˆ์†Œ์‹

๐Ÿ“ฑ iOS/-- UIKit

(iOS) - info.plist & appProject ( .xcodeproj )

  • -

#AppProject

Target

๋นŒ๋“œํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ์ง€์ •ํ•˜๊ณ  , ๋นŒ๋“œํ•˜์—ฌ ์ƒ์„ฑ๋  ์ตœ์ข… ํ”„๋กœ๋•ํŠธ

ex) ํ•œ๊ตญ์šฉ, ์ค‘๊ตญ์šฉ, ๊ด‘๊ณ  ์žˆ๋Š” ๋ฒ„์ ผ, ์—†๋Š”๋ฒ„์ ผ...... ์ด๋Ÿฐ์‹์œผ๋กœ ๋นŒ๋“œํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ๋‚˜๋ˆ„๋Š” ๊ฐœ๋…

 

Identity

  • Bundle Identifier: ์•ฑ์Šคํ† ์–ด์—์„œ ์‚ฌ์šฉํ•  identifier (์œ ์ผํ•œ ๊ฐ’์ด์–ดํ•จ)
  • Build: ๋นŒ๋“œ ๋ฒˆํ˜ธ
  •  

Deployment Info

์•ฑ ๋ฐฐํฌ์‹œ ํ•„์š”ํ•œ ์ •๋ณด๋“ค

  • Target: iOS ์ตœ์†Œ๋ฒ„์ „๊ณผ ๋””๋ฐ”์ด์Šค ์„ค์ •(iPad, Mac, iPhone)
  • Main Interface: ์•ฑ ์‹คํ–‰ํ›„ ์ฒ˜์Œ ๋‚˜์˜ค๋Š” StoryBoard๋ฅผ ์ง€์ •.
  • Device Orientation: ๊ธฐ๊ธฐ ํšŒ์ „ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ์„ค์ •ํ•œ๋‹ค.
  • Status Bar Style: ์•ฑ ์‹คํ–‰์‹œ ๋ณด์—ฌ์ง€๋Š” Status Bar์˜ ์Šคํƒ€์ผ ์„ค์ •

 

App Icons and Launch Images

  • App Icons Source: ์•ฑ ์•„์ด์ฝ˜ ์„ค์ •. Assets.xcassets ์—์„œ ์‚ฌ์ด์ฆˆ๋ณ„ ์ด๋ฏธ์ง€๋ฅผ ๋“ฑ๋กํ•ด์•ผํ•œ๋‹ค.
  • Lauch Screen File: ๋Ÿฐ์น˜ ์Šคํฌ๋ฆฐ(์‹คํ–‰ํ›„ ๋กœ๋”ฉ ํŽ˜์ด์ง€) ์„ค์ •

 

Supported Intents

Frameworks, Libraries, and Embedded Content

  • Frameworks and libraries in the same target
  • Frameworks and libraries in other targets
  • External XCFrameworks, frameworks, and libraries
  • Library products in Swift packages

Development Assets

๊ฐœ๋ฐœ์ค‘์—๋งŒ ํ•„์š”ํ•œ ๊ธฐํƒ€ํŒŒ์ผ ๋ฐ ๋ฆฌ์†Œ์Šค๋“ค์„ ์ถ”๊ฐ€ํ• ์ˆ˜ ์žˆ๋‹ค. ์ด ํŒŒ์ผ๋“ค์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„์นด์ด๋ธŒ๋ ๋•Œ๋Š” ์•ฑ ๋ฒˆ๋“ค์— ์ถ”๊ฐ€๋˜์ง€ ์•Š๋Š”๋‹ค.

 

 

# Info.plist  (infomation property list file)

 

info.plist๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

iOS๋Š” ์‚ฌ์šฉ์ž UI๋ฅผ ์œ„ํ•˜์—ฌ ๊ฐ ์•ฑ ๋ฐ ๋ฒˆ๋“ค์— ์žˆ๋Š” ํŠน์ˆ˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— ์˜์กดํ•œ๋‹ค. ์ด๋•Œ ์•ฑ์ด ์‹œ์Šคํ…œ์— ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ชฉ๋ก์„ info.plist๋ผ๊ณ  ํ•œ๋‹ค. ์ด key, value๋กœ ์ด๋ฃจ์–ด์ง„ ๋ชฉ๋ก์„ ๋ณด๊ณ  ์‹œ์Šคํ…œ์€ ๋ฒˆ๋“ค์„ ์–ด๋–ป๊ฒŒ ํ•ด์„ํ• ์ง€ ํ™•์ธํ•œ๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด, OS์—์„œ ์•ฑ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ํ•„์ˆ˜ ์„ค์ • ์ •๋ณด๋ฅผ info.plist๋กœ๋ถ€ํ„ฐ ๊ฐ€์ ธ์˜จ๋‹ค.

info.plist์— ํฌํ•จ๋œ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ๋ชฉ๋ก (keys)

  • ์•ฑ์˜ ์†์„ฑ ๋ชฉ๋ก ๊ด€๋ฆฌ : ์•ฑ์— ๋Œ€ํ•œ ์ •๋ณด ์†์„ฑ ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ , ์‚ฌ์šฉ์ž ์ง€์ •์„ ํ•œ๋‹ค.
  • ๋ฒˆ๋“ค ๊ตฌ์„ฑ(Bundle Configuration) : ์ด๋ฆ„, ์œ ํ˜• ๋ฐ ๋ฒ„์ „๊ณผ ๊ฐ™์€ ๊ธฐ๋ณธ ํŠน์„ฑ ์ •์˜.
  • ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(User Interface) : ์•ฑ์˜ ์”ฌ, ์Šคํ† ๋ฆฌ๋ณด๋“œ, ์•„์ด์ฝ˜, ํฐํŠธ, ๋ฐ ๊ธฐํƒ€ UI์š”์†Œ
  • ์•ฑ ์‹คํ–‰(App Execution) : ์•ฑ ์‹คํ–‰, ๋ฐ ์ข…๋ฃŒ๋ฅผ ์ œ์–ด
  • ๋ณดํ˜ธ๋œ ๋ฆฌ์†Œ์Šค(Protected Resources) : ์‚ฌ์šฉ์ž ๊ฐœ์ธ์ •๋ณด(๋ฐ์ดํ„ฐ) ๋ฐ ๋ณดํ˜ธ๋œ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ๋“ฑ ์•ฑ์˜ ์—‘์„ธ์Šค๋ฅผ ์ œ์–ดํ•œ๋‹ค.
  • ๋ฐ์ดํ„ฐ ๋ฐ ์Šคํ† ๋ฆฌ์ง€(Data and Storage) : ๋ฌธ์„œ, URL, ๋“ฑ์˜ ๋ฐ์ดํ„ฐ ์ด๋™ ๋ฐ ์ €์žฅ์„ ์ œ์–ด
  • ์•ฑ ์„œ๋น„์Šค(App Services) : ๊ธธ์ฐพ๊ธฐ ์ง€์› ๋ฐ ๊ฒŒ์ž„ ์ปจํŠธ๋กค๋Ÿฌ ์‚ฌ์šฉ๊ณผ ๊ฐ™์ด ์•ฑ์—์„œ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค.
  • ์ปค๋„ ๋ฐ ๋“œ๋ผ์ด๋ฒ„(Kernel and Drivers) : ์•ฑ์—์„œ ์ œ๊ณตํ•˜๋Š” ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค.

 

https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009248-SW1

 

About Info.plist Keys and Values

About Info.plist Keys and Values To provide a better experience for users, iOS and macOS rely on the presence of special metadata in each app or bundle. This metadata is used in many different ways. Some of it is displayed to the user, some of it is used i

developer.apple.com

 

 

Infomation Property List

  • Localization native development region: ๊ฐœ๋ฐœ ์ง€์—ญ ๋ฐ ์–ธ์–ด
  • Executable file : ์‹คํ–‰ ํŒŒ์ผ ์ด๋ฆ„
  • bundle identifier : ๋ฒˆ๋“ค ์‹๋ณ„๊ฐ’
  • infoDictionary version : Info.plist์˜ ๋ฒ„์ „
  • Bundle name : ๋ฒˆ๋“ค ๋„ค์ž„
  • Bundle OS Type code : ๋ฒˆ๋“ค OS ์ข…๋ฅ˜์— ๋Œ€ํ•œ code
  • Bundle version string (short) : ๋ฒˆ๋“ค ๋ฆด๋ฆฌ์ฆˆ ๋ฒ„์ „
  • Bundle version : ๋ฒˆ๋“ค ๋นŒ๋“œ๋ฒ„์ „
  • Application requires iPhone environment : iOS์—์„œ๋งŒ ์‹คํ–‰ํ•˜๋Š”์ง€ ์—ฌ๋ถ€

Application Scene Manifest

  • Enable Multiple Windows
  • Scene Configuration
    • Application Session Role
      • Item 0(Defalut Configuration)
        • configuration Name
        • Delegate Class Name
        • Storyboard Name
  • Application supports indirect input events
  • Launch screen interface file base name
  • Main Storyboard file base name
  • Required device capabilities
  • Requires Full Screen
  • Status bar is initially hidden
  • Status bar style
  • Supported interface orientations
  • Supported interface orientations (iPad)

 

CF๋ž€ ?

Core Foundation์˜ ์•ฝ์ž๋กœ, OS ์ปค๋„, ์จ๋“œํŒŒํ‹ฐ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ๋“ฑ์„ ์œ„ํ•ด ํ•„์š”ํ•œ API์˜ ์ง‘ํ•ฉ์„ ๋งํ•œ๋‹ค. ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ CFArray์ด๋ฉฐ, ๋ฒˆ๋“ค ๋ฐ ๊ธฐํƒ€ ์ •๋ณด๋“ค์€ Core Foundation์„ ํ†ตํ•ด ์–ป์–ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋œปํ•œ๋‹ค.

  • Bundel version string (short)
  • Bundel version
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.