MLKit로 얼굴을 인식해서 필터를 씌워주는 개발중이다. 얼굴 위에 사각형을 그려주거나 점을 찍는 필터를 개발하며 iOS의 Core Graphics 를 사용하게되었다. CGFloat, CGSize 등 여러가지 CG들이 등장했는데, 이것을 한번 정리해보겠다. Core Graphics 아이폰과 아이패드에서 2차원 그래픽을 그릴 수 있도록 제공하는 그래픽 라이브러리 애플의 'Quartz'라는 그래픽 안에 포함되어 있으며 Core Graphics 외에도 Core Animation 라이브러리가 함께 존재한다. Core Graphics의 자료구조 CG를 사용해 그래픽을 그려주려면 크기나 위치 지정을 위해 계속 등장하는 CG~~들이 있다! ✔️ CGFloat Apple Developer Documentation de..
MLKit를 쓰기 위해 iOS 프로젝트에 파이어베이스를 사용 설정을 해야하는 일이 생겼다! iOS 프로젝트의 여러가지 설정에 익숙하지 않아 겁을 먹었지만 생각보다 간단했다. 또 파이어베이스를 사용하기 위해서는 안드로이드의 gradle과 같은 iOS의 pod 파일도 함께 관리해줘야한다. 일단 시작~~!~! 📌 01. Firebase 프로젝트 만들기 Firebase Firebase는 고품질 앱을 빠르게 개발하고 비즈니스를 성장시키는 데 도움이 되는 Google의 모바일 플랫폼입니다. firebase.google.com Firebase 사이트 접속하여 로그인 후에 새 프로젝트를 만들어준다. 무료 계정은 프로젝트 개수에 제한이 있다! 📌 02. 프로젝트에 앱 등록하기 생성한 프로젝트에 원하는 플랫폼을 선택하여 ..
ViewController의 생명주기 앱에 나타나는 하나의 화면은 하나의 ViewController를 가짐 사진과 같은 구조로 호출되는 함수를 override하여 각 타이밍에 맞게 원하는 작업을 수행할 수 있음 ✔️ viewDidLoad() 뷰의 컨트롤러가 메모리에 로드되고 난 후 시스템에 의해 자동 호출되는 메소드 화면이 처음 만들어질 때 한번만 수행 리소스 초기화 또는 초기 화면 구성 등의 작업 수행 + 안드로이드의 onCreate() 같은 역할 ✔️ viewWillAppear() 뷰가 화면에 나타나기 직전 호출되는 메소드 다른 화면에 갔다가 돌아왔을 때 다시 복구 또는 실행해야하는 작업 수행 + 안드로이드의 onResume() 같은 역할 ✔️ viewDidAppear() 뷰가 화면에 나타난 후 실행..
iOS 앱의 5가지 생명주기 Not Running App이 아직 실행되지 않았거나 완전히 종료된 상태 Inactive(Foreground) App이 실행되고 있어 foreground에 있지만 이벤트를 받지 않는 상태 Active 상태로 넘어가기 전에 잠시동안 머무른다 ex) 미리알림 등의 alert가 올라와 앱이 실질적으로 이벤트를 받지 못하는 상황 Active(Foreground) App이 실행되고 있어 foreground에 있고 이벤트가 발생한 상태 일반적으로 앱이 돌아가는 상태 Background App이 background 상태에 있으나 실행되고 있는 코드가 있는 상태 Background 상태로 실행되는 app은 inactive 대신 background 상태로 진입 Suspended 상태로 넘어가..