Deep Dive iOS
앱이 inactive 상태가 되는 경우
미리 알림, 제어센터를 볼때 전화 or 메세지 알림이와서 보낼때 멀티태스킹 화면을 켰을때 (여러 앱을 뛰어놓은 화면) + applicationWillResignActive() 메소드 부연설명 applicationWillResignActive applicationWillResignActive() 앱이 inactive상태가 될때 호출되는 delegate 메소드 iOS 13이상에선 scenes을 사용하므로, sceneWillResignActive() 메소드 이겠죠? 메소드 설명 UIKit은 이 메소드를 호출하여 앱이 active(활성) 상태에서 inactive상태로 이동하려고 함을 알립니다. 수신 전화 또는 SMS 메세지와 같은 일시적인 중단 상태일때 사용자가 앱을 종료하고 백그라운드 상태로 전환되기 시작하면..
iOS/Swift) UIKit 이란?
iOS 앱을 만들고, User Interface를 구성하는 데 필수적인 프레임워크 이름은 무엇인가? UIKit 입니다. 가장 많이 사용하는 프레임워크, UIKit의 구체적인 역할에 대해 알아봅시다! Construct and manage a graphical, event-driven user interface for your iOS or tvOS app. (Swift 공식문서 참조) iOS앱 또는 tvOS앱에 과한 그래픽적인 부분, 이벤트 기반 UI를 구성하고 관리합니다. 이제 ARM을 장착한 맥북이 나오므로.. iPad, iPhone, MAC 에서 동시에 빌드가 되는 시대가 오겠죠? 그때의 역할에서의 UIKit이 어떨지도 생각해보면 좋을 것 같습니다. (다음의 포스팅 주제..? ㅎ) UIKit frame..
시뮬레이터에서 할 수 없는 것과 실제 iPhone과의 차이
먼저 시뮬레이터는 당연히 iPhone이 아니다. MacOS에서 구동되기 때문에 CPU, 메모리, 네트워크 연결을 포함한 컴퓨터 리소스에 액세스 할 수 있다. 이때문에 아이폰 보다 빠를 가능성이 높다. 그렇기 때문에 시뮬레이터는 앱의 성능, 메모리 사용량 및 네트워크 속도 등에 대해서 정확한 테스트가 아니다! 하드웨어 미지원 모션 지원 (가속도계 및 자이로 스코프)은 지원되지 않습니다. 오디오 및 비디오 입력 (카메라 및 마이크)은 지원되지 않습니다. 근접 센서 기압계 주변 광 센서 문서엔 없지만 당연하게도 안되는 것 페이스 아이디 센서 AR 관련 Test API 미지원 Apple 푸시 알림 받기 및 보내기 사진, 연락처, 캘린더 및 미리 알림에 액세스하기위한 개인 정보 보호 알림 UIBackgroundM..
앱의 상태 및 수명주기에 관련한 메소드
Managing Your App's Life Cycle 앱의 수명주기 관리: 앱이 foreground 이거나 background 상태일때, 다른 중요한 시스템 이벤트 처리를 다룹니다.(handling) 시스템 이벤트 처리에 관한 메소드, 작업이 가능한 상태와 불가능한 상태 앱의 현재 상태에 따라 언제든지 할 수있는 작업과 할 수없는 작업이 결정됩니다. 예를 들어 foreground 일때는 사용자의주의를 끌기 때문에 CPU를 포함한 시스템 리소스보다 우선합니다. 반대로 background 앱은 화면 밖에 있기 때문에 가능한 한 적은 작업을 수행해야하며 가급적 아무것도 수행하지 않아야합니다. 앱이 상태별로 변경되면 그에 따라 동작을 조정해야합니다. 앱의 상태가 변경되면 UIKit은 적절한 delegate o..