안드로이드(Android)란?
구글이 개발한 모바일 운영 체제이다.
스마트폰, 태블릿, 스마트 워치 등 다양한 기기에 사용된다.
Linux 기반으로 작동하며, Java와 Kotlin 등 프로그래밍 언어를 사용하여 Application을 개발할 수 있음
전 세계적으로 가장 많이 사용되는 모바일 운영 체제 중 하나이다.
또한, 개방형 플랫폼이기 때문에 개발자들이 쉽게 앱을 개발하고 배포할 수 있다.
안드로이드 특징
1. Java 기반
- 개발할 때 사용하는 언어는 자바이다. 따라서 다양하고 쉽게 개발에 접근 가능하다.
2. Open Source
- 오픈소스를 기반으로 하고 있으며 Apache 2.0 라이선스를 사용한다.
3. 완벽한 Component
- 핵심적인 커널 부분만 제공하는 것이 아니라 제공된 소스를 사용하면 사용자 스마트폰에 그대로 만들어진다.
4. 높은 점유율
- IOS를 제치고 80% 넘는 점유율을 가지고 있으며 Windows의 점유율마저 넘어섰다는 소식이 있다.
5. 높은 이식성
- Linux 기반으로 하고 있으며 하드웨어 기능을 쉽게 연동할 수 있다. 스마트폰, 태블릿, PMP 등 다양한 통신 기기에 사용될 수 있다. 최근에는 자동차까지도 적용할 수 있어서 무궁무진한 발전 가능성을 가지고 있다.
6. 쉬운 연동
- 안드로이드로 만든 앱은 다른 앱에서 제공하는 기능을 쉽게 사용할 수 있도록 만들어져 있다.
안드로이드 버전 역사
안드로이드 4대 구성요소
1. 액티비티(Activity)
- Android Application 사용자 인터페이스를 담당하는 구성 요소이다.
- 화면을 구성하는 기본 단위
- 사용자가 상호 작용할 수 있는 모든 요소가 이를 기반으로 작동
2. 서비스(Service)
- 백그라운드에서 실행되는 Application의 구성 요소이다.
- 사용자 인터페이스 제공하지 않으며, 오랫동안 실행될 수 있다.
- ex) 음악 재생, 네트워크 작업 등
3. 방송 수신자(Broadcast Receiver)
- 시스템 또는 다른 Application으로부터 전달되는 방송 메시지를 수신하고 처리하는 구성 요소이다.
- ex) 배터리 부족, SMS 수신 등 Event 처리
4. 콘텐츠 제공자(Content Provider)
- Application 간 데이터를 공유하는 데 사용되는 구성 요소이다.
- 데이터를 검색, 추가, 수정 및 삭제할 수 있는 인터페이스를 제공한다.
- ex) 주소록, 카메라 롤 등의 데이터를 공유
'Android Security' 카테고리의 다른 글
NDK(Native Development Kit)란? (0) | 2023.03.12 |
---|---|
JNI(Java Native Interface)이란? (0) | 2023.03.12 |
Java, Kotlin이란? (0) | 2023.03.12 |
디컴파일(Decompile)이란? (0) | 2023.03.12 |
APKTool이란? (0) | 2023.03.12 |