Q1. 안드로이드 애플리케이션 클래스는 무엇인가?
- 안드로이드의 application class는 액티비티 및 서비스와 같은 다른 모든 구성요소에 접근 가능한 기본 클래스입니다. 또한 애플리케이션 프로세스가 생성될 때 가장 먼저 초기화 됩니다. 그렇기 때문에 보통 앱 전역에서 일관성있게 사용하는 요소들을 등록하여 사용합니다.
Q2. context 무엇인가?
- context 는 리소스에 접근하거나, 데이터베이스나 프리퍼런스에 접근하는 등 기타 등등 역할을 제공합니다. 앞으로 비교할 다른 context와 다른 중요한 점은 애플리케이션에서 현재 실행되고 있는 환경을 가지고 있는 차이가 있습니다.
Q3. ARM64-v8a, ARMv7, ABI 가 무엇인가?
- 안드로이드 디바이스는 다양한 cpu를 사용하여 만들고, cpu에서 제공하는 명령셋은 다양합니다. 대표적인것이 ARMv7이 있고 우리가 작성한 코드가 javac에 의해 바이트 코드(.class)로 바뀌고 ART VM 안에서 JIT컴파일을 통해 기계어로 번역 되는데 이때 기계어를 해석하고 명령하는데 cpu마다 명령을 실행하는 방법이 다르고 실행가능한 바이너리 형식, 명령 집합등이 정의되어 있는 것이 어플리케이션 바이너리 인터페이스 (ABI) 입니다.
Q4. 빌드타입 무엇인가?
- 빌드타입이란 현재 사용하고 있는 라이브러리, 모듈 등의 빌드 방법을 정의하는 것입니다. 안드로이드 앱이 패키징 되고, 빌드 될 때 그래들을 사용하여 빌드 타입을 정의할 수 있습니다. 빌드할 때 추가되어야하는 리소스를 분리하여 적용할 수 있습니다.
Q5. onCreate() vs onStart() ?
- oncreate 메소드는 어플리케이션이 시작되거나 액티비티가 삭제된 후 재 생성될 때 액티비티 사이클에서 한번만 호출됩니다.
- onstart 메소드는 언제든지 액티비티가 유저에게 보여줄 준비가 되어있을 때 호출될 수 있습니다.
Q6. 액티비티에서 onPause 나 onStop이 호출되지 않고 onDestroy가 호출되는 경우?
- oncreate 함수 안에서 finish() 를 호출 할 경우 시스템은 직접 ondestroy를 호출합니다.
Q7. LMK가 무엇인가요?
- LNK(Low Memory Killer) 안드로이드에서 가용 메모리가 부족할 때 프로세스들을 죽이는 동작입니다.
'OS' 카테고리의 다른 글
| [개발상식] 안드로이드 기술면접 준비 - 2 (0) | 2022.11.07 |
|---|---|
| [개발상식] IT 기술면접 준비 - 4 (데이터 베이스) (0) | 2022.10.25 |
| [개발상식] IT 기술면접 준비 - 3 (컴퓨터 구조) (0) | 2022.10.24 |
| [개발상식] IT 기술면접 준비 - 3(운영체제) (0) | 2022.10.23 |
| [개발상식] IT 기술면접 준비 - 2 (컴퓨터 네트워크) (0) | 2022.10.22 |