본문 바로가기
728x90

안드로이드4

[Android] - Activity의 라이프 사이클 Activity는 안드로이드 앱의 entry point입니다. 그리고 앱을 만드는 주요 Component 중 하나입니다. 사용자와 앱이 interaction(터치, 텍스트 입력, 화면 이동 등) 할 수 있도록 지원합니다. 이러한 Activity에서는 사용자와 직접적으로 직면할 수 있는 요소이기 때문에 사용자가 하는 작업에 따라 사이클을 관리해줘야 합니다. Activity에서는 onCreate() onStart() onResume() onPause() onStop() onDestroy() 총 6가지 콜백을 제공합니다. 시스템은 새로운 상태에 들어가면 콜백을 호출합니다. 위 그림은 안드로이드 Activity의 라이프 사이클을 그림으로 표현한 것입니다. 유저가 어떤 행동을 하는지나 시트템에 의해 사이클이 변경.. 2023. 2. 15.
안드로이드의 시작 상태 - app startup time (Cold, Warm, Hot) 안드로이드 애플리케이션은 사용자에게 빠르고 편리한 시스템을 제공합니다. 하지만 안드로이드 앱에서 너무 많은 시간을 대기하거나 멈춰있는 경우 사용자가 앱을 사용을 이탈하거나 앱을 삭제할 수도 있습니다. 따라서 안드로이드 앱을 개발할 때에는 단순히 실행되는 앱이 아닌 빠르고 편리한 앱을 만들 수 있도록 목적을 주어야 합니다. 안드로이드 앱 실행 시간 안드로이드 앱은 상태에 따라 각각 다른 속도로 실행됩니다. 이러한 각각의 상태를 안드로이드 시작 상태라고 합니다. 앱은 콜드 스타트, 웜 스타트, 핫 스타트라는 세 가지 상태 중 하나에서 시작하며, 각 상태를 앱이 사용자에게 실행되는 데에 걸리는 시간에 영향을 미칩니다. 상태를 간단하게 비교하자면 콜드 스타트는 앱이 처음부터 시작됩니다. 다른 상태(웜 스타트, .. 2023. 2. 7.
::class.java는 무엇일까 안드로이드를 하다 보면 Activity를 가리키는 상황에서 MyActivity::class.java나 Class::class.java와 같은 코드를 사용하는 경우들이 종종 있습니다. 분명 코틀린을 사용하고 있는데 java가 나오는 이유가 무엇일까요? 전 글에서 더블 콜론에 대해 설명하며 짧게 지나간 내용이 있습니다. Java와 Kotlin의 Class는 다릅니다. Java의 클래스의 경우 Calss로 반환되지만 Kotlin의 클래스의 경우 KClass로 반환됩니다. 안드로이드를 하며 클래스를 반환하는 대부분의 경우에선 Java 클래스인 Class를 필요로 합니다. 따라서 저희는 Kotlin을 사용하기 때문에 KClass를 Class로 변환해야 합니다. 위 메서드는 KClass를 반환하는 방법을 알려줍니다.. 2023. 2. 7.
Android 4대 컴포넌트 안드로이드 앱에는 기본 요소라고 불리는 여러 요소들이 존재합니다. 그중 Android 4대 컴포넌트 라고 불리는 요소들은 면접에서도 자주 나올 정도로 안드로이드 앱을 개발하면서 굉장히 중요하다는 것을 알 수 있습니다. 안드로이드에서는 아래 유형들을 안드로이드 4대 컴포넌트라고 부릅니다. 액티비티 (Activity) 서비스 (Service) 브로드캐스트 리시버(Broadcast Receiver) 콘텐츠 제공자(Content Provider) 각 유형들은 안드로이드 앱에서 뚜렷한 목적을 수행하고, 나름의 수명 주기가 있어 구성 요소의 생성 및 소멸 방식을 정의합니다. 또한 사용자나 시스템이 앱에 진입할 수 있는 진입점입니다. 조금 더 자세하게 하나씩 알아봅시다. 액티비티(Activity) 액티비티는 사용자와.. 2023. 1. 27.
728x90