App and Environment

Panther·2021년 4월 5일
0

https://developer.apple.com/documentation/uikit/app_and_environment

"Manage life-cycle events and your app’s UI scenes, and get information about traits and the environment in which your app runs."

생명주기 이벤트와 앱의 UI 씬을 관리합니다. 그리고 앱이 작동하는 특성과 환경에 대한 정보를 가져옵니다.

Overview

iOS 13 버전과 그 이후 버전에서 사용자는 동시에 앱의 UI를 여러개 생성하거나 다룰 수 있습니다. 그리고 앱 스위처를 통해 앱을 바꿔줄 수 있습니다. 아이패드는 사용자가 화면 안에 양 옆으로 여러개의 인스턴스를 보여줄 수 있도록 하기도 합니다. 각 인스턴스는 가지고 있는 다른 내용물을 보여주거나 여러 방법으로 같은 내용물을 보여줄 것입니다. 예를 들어 사용자는 특정 날짜를 보여주는 캘린더 앱의 인스턴스를 보면서 다른 한 쪽에서 월 단위의 날짜들을 보고 있을 수 있습니다.

UIKit은 기기 세팅의 조합, 인터페이스 설정, 사용자 프리퍼런스를 반영하는 특성 컬렉션을 사용함으로써 현재 환경에 대한 세부적인 내용들과 소통합니다. 예를 들어 현재 뷰에서 다크 모드가 활성화되어 있는 것인지 혹은 뷰 컨트롤러에서 다크 모드가 활성화되어 있는 것인지 알아내기 위해 특성을 사용할 수 있습니다. 현재 환경에서 내용물을 커스터마이징하길 원한다면, UIView 혹은 UIViewController의 현재 특성 컬렉션을 참고하면 됩니다. 다른 객체들의 특성 노티피케이션 변경을 받길 원한다면 그 객체들이 UITraitEnvironment 프로토콜을 채택할 수 있도록 하면 됩니다.

Topics


Life Cycle

Managing Your App's Life Cycle

앱이 포어그라운드 혹은 백그라운드에 진입할 때 시스템 노티피케이션에 응답합니다. 그리고 다른 중요한 시스템 관련 이벤트를 처리합니다.

https://developer.apple.com/documentation/uikit/app_and_environment/managing_your_app_s_life_cycle
https://velog.io/@panther222128/App-Life-Cycle

Responding to the Launch of Your App

앱의 데이터 구조를 초기화하고, 앱의 실행을 준비합니다. 그리고 시스템으로부터 모든 launch 타임 요청에 반응합니다.

https://developer.apple.com/documentation/uikit/app_and_environment/responding_to_the_launch_of_your_app
https://velog.io/@panther222128/Responding-to-the-Lauch-of-Your-App

UIApplication

iOS에서 작동하는 앱에 대한 컨트롤과 조정의 중심점입니다.

https://developer.apple.com/documentation/uikit/uiapplication
https://velog.io/@panther222128/UIApplication-and-App-Delegate

Scenes

앱의 여러 UI 인스턴스들을 동시에 관리하고, 리소스들을 UI의 적합한 인스턴스로 보냅니다.

하위 주제 내용 번역 필요

https://developer.apple.com/documentation/uikit/app_and_environment/scenes
https://velog.io/@panther222128/Scenes


Multitasking

Multitasking on iPad

앱을 iPadOS에 원활하게 통합시키기 위해 멀티태스킹 API를 구현합니다.

https://developer.apple.com/documentation/uikit/app_and_environment/multitasking_on_ipad
https://velog.io/@panther222128/Multitasking-on-iPad


Device Environment

UIDevice

현재 기기를 나타냅니다.

https://developer.apple.com/documentation/uikit/uidevice
https://velog.io/@panther222128/UIDevice

UIStatusBarManager

상태 바의 설정을 나타내는 객체입니다.

https://developer.apple.com/documentation/uikit/uistatusbarmanager
https://velog.io/@panther222128/UIStatusBarManager


Adaptivity

Responding to Changing Display Modes on Apple TV

기기에 대한 스크린 영역이 변경될 때 이미지 및 리소스를 동적으로 변경시킵니다.

https://developer.apple.com/documentation/uikit/app_and_environment/responding_to_changing_display_modes_on_apple_tv
https://velog.io/@panther222128/Responding-to-Changing-Display-Modes-on-Apple-TV

UITraitCollection

수평 및 수직 사이즈 클래스, 디스플레이 스케일, UI idiom과 같은 특성을 포함하고 있는, 앱을 위한 iOS 인터페이스 환경입니다.

https://developer.apple.com/documentation/uikit/uitraitcollection
https://velog.io/@panther222128/UITraitCollection


Architecture

Updating Your App from 32-Bit to 64-Bit Architecture

번역 필요

https://developer.apple.com/documentation/uikit/app_and_environment/updating_your_app_from_32-bit_to_64-bit_architecture
https://velog.io/@panther222128/Updating-Your-App-from-32-Bit-to-64-Bit-Architecture


See Also


App Structure

Documents, Data, and Pasteboard

앱의 데이터를 조직화하고 해당 데이터를 페이스트보드에 공유합니다.

https://developer.apple.com/documentation/uikit/documents_data_and_pasteboard
https://velog.io/@panther222128/Documents-Data-and-Pasteboard

Resource Management

앱의 인터페이스 구현을 위해 사용하는 이미지, 스트링, 스토리보드, nib 파일을 관리합니다.

https://developer.apple.com/documentation/uikit/resource_management
https://velog.io/@panther222128/Resource-Management

App Extensions

시스템의 다른 부분으로 앱의 기본적인 기능을 확장시킵니다.

https://developer.apple.com/documentation/uikit/app_extensions
https://velog.io/@panther222128/App-Extensions

Interprocess Communication

사용자에게 활동 기반 서비스를 표시합니다.

https://developer.apple.com/documentation/uikit/interprocess_communication
https://velog.io/@panther222128/Interprocess-Communication

Mac Catalyst

사용자가 맥 기기에서 실행할 수 있는 아이패드 앱 버전을 생성합니다.

https://developer.apple.com/documentation/uikit/mac_catalyst
https://velog.io/@panther222128/Mac-Catalyst


0개의 댓글