- 요약 -
1. 스마트폰 별 개발 환경
구분 | 안드로이드 | 아이폰 | 윈도우폰 |
개발언어 | Java, Kotlin | Swift | C# VB.Net |
개발 운영체제 | Windows, Mac OS, Linux | Mac OS | Windows |
개발 툴 | Android Studio | Xcode | Visual Studio |
최신 개발 버전 | Android 11 | iOS 14 | 윈도우10 모바일 |
2. 안드로이드 버전 흐름
안드로이드 1.0 G1 -> 안드로이드 1.1 페티 폴 -> 안드로이드 1.5 컵케이크 -> 안드로이드 1.6 도넛 -> 안드로이드 2.0 / 2.1 에클레어 -> 안드로이드 2.2 프로요 -> 안드로이드 2.3 진저브레드 -> 안드로이드 3.x 허니콤 -> 안드로이드 4.0 아이스크림 샌드위치 -> 안드로이드 4.1~3 젤리 빈 -> 안드로이드 4.4 킷캣 -> 안드로이드 5.0 롤리팜 -> 안드로이드 6.0 마시멜로 -> 안드로이드 7.0 누가 -> 안드로이드 8.0 오레오 -> 안드로이드 9.0 파이 -> 안드로이드 10 -> 안드로이드 11
(여담이지만 10 부터는 번호가 붙는 버전으로 네이밍 체계를 바꾼다고 하네요. 10에 해당하는 Q에 대한 마땅한 디저트 이름도 없고 각 국가별 사용자의 디저트 이름에 대한 인지가 서로 다를 수 있다는 점, 또한 명확한 버전 구분이 가능하도록 하기 위해서 라고 합니다.)
3. 안드로이드 주요 기능
- 에플리케이션 프레임워크를 통한 코드의 재사용
- SQLite 제공
- 최적화 된 2-3D 그래픽
- 각종 오디오, 비디오, 이미지 형식 지원
- 다양한 하드웨어 지원
- 개발 환경 제공
- 런타임 제공
4. 안드로이드 운영체제 구조
응용 프로그램 |
응용 프로그램 프레임 워크 |
안드로이드 런타임 |
라이브러리 |
리눅스 커널 |
- 연습문제 -
1. [표 1-2]의 안드로이드 버전별로 지원하는 스마트폰의 종류를 조사하시오.
이미지 | 코드명 | 버전 | API레벨 | 지원 스마트폰 | 발표일자 | 비고 |
애플 파이 (Apple Pie) or 아스트로 보이 (Astro boy) |
1.0 | 1 | T-Mobile HTC G1 |
2008년 9월 | 2008년 9월 최초 발표 | |
프티 푸르 (Petit Four) or 바나나 브레드 (Banana bread) |
1.1 | 2 | T-Mobile HTC G1 | 2009년 2월 | 통화 기능 수정 (스피커폰 모드) 시간 조정, 문자메시지 첨부 파일 |
|
컵케이크 (Cupcake) |
1.5 | 3 | 삼성 갤럭시 (GT-I7 500) |
2009년 4월 | 가상 키보드, 라이브 폴더, 음성 인식 지원, 풀 스크린, 블루투스 지원 | |
도넛 (Donut) |
1.6 | 4 | 엑스페리아 X8 등 |
2009년 9월 | WVGA 해상도 지원, TTS엔진 기능 추가, 통합 검색 기능, 갤러리 UI, 다중 선택/삭제 지원 CDMA 공식 지원 |
|
에클레어 (Eclair) |
2.0 2.1 |
5 6 7 |
넥서스 원 갤럭시 S 등 |
2010년 1월 | 하드웨어 최적화, 많은 해상도 지원, 블루투스 2.1 지원, 여러가지 문제 개선 | |
프로요 (Froyo) |
2.2 | 8 | 넥서스 원 옵티머스 원 옵티머스 시크 갤럭시 S 갤럭시 S Infuse 등 |
2010년 5월 | 성능 개선, USB 테더링 지원, 업데이트 기능 지원, 플레시 10.1지원 | |
진저브레드 (Gingerbread) |
2.3 | 9 10 |
넥서스 S 갤럭시 S 갤럭시 S Plus 갤럭시 S Infuse 등 |
2010년 12월 6일 | UI성능 개선, 다양한 센서 지원, | |
허니콤 (Honeycomb) |
3.0 3.1 3.2 |
11 12 13 |
Xoom 등 |
2011년 2월 2011년 5월 2011년 7월 |
테블릿 PC 최적화 | |
아이스크림 샌드위치 (Ice Cream Sandwich) |
4.0 4.0.3 |
14 15 |
갤럭시 넥서스 등 |
2011년 10월 2011년 11월 |
진저브레드 허니콤 통합, 스마트폰 및테블릿 함께 지원 | |
젤리빈 (Jelly Bean) |
4.1 4.2 4.3 |
16 17 18 |
갤럭시 S2, S3, S4 옵티머스 LTE 넥서스 7 갤럭시 넥서스 넥서스 10 넥서스 4 등 |
2012년 7월 2012년 12월 2013년 6월 |
매끄러운 UI, 화면 전환 개선, 전력 효율 | |
킷캣 (KitKat) |
4.4 4.4x |
19 20 |
넥서스 4 넥서스 5 넥서스 7시리즈 넥서스 10 갤럭시 S4 HTC ONE 등 |
2013년 10월 2014년 6월 |
메모리 관리 강화, GPU 가속화, UI 변경, 4.4x 웨어러블 확장 지원 | |
롤리팝 (Lollipop) |
5.0 5.1 |
21 22 |
넥서스 6 넥서스 9 넥서스 플레이어 등 |
2014년 11월 2015년 3월 |
64bit 지원, 잠금 중에 알림 영역 표시. 메터리얼 디자인 | |
마시멜로 (Marshmallow) |
6.0 | 23 | 넥서스 5X 넥서스 6P 등 |
2015년 10월 | 앱 권한 설정, 지문인식 | |
누가 (Nougat) |
7.0 7.1 |
24 25 |
LG V20 구글 픽셀 픽셀 XL 등 |
2016년 8월 2016년 10월 |
가상현실 지원, 3D 게임 최적화, 멀티태스킹 강화, 화면 해상도 조절 | |
오레오 (Oreo) |
8.0 8.1 |
26 27 |
소니 엑스페리아 XZ1, XZ1 컴팩트 넥서스 펠레이어 넥서스 5X 갤럭시 A6-9 갤럭시 S8 등 |
2017년 8월 2017년 10월 |
PIP, 배터리 개선, 부팅 속도 개선, 어댑티브 아이콘, Java 8 지원 | |
파이 (Pie) |
9 | 28 | 엑스패리아XZ3 구글 픽셀 시리즈 샤오미 원플러스 노키아 모토로라 삼성전자 등 |
2018년 8월 | 실내 위치 추적, 향상된 알림, 채널 설정, 멀티카메라, 고정 모드, 인공지능 확장 | |
10 | 10 | 29 | 구글 픽셀4 등 |
2019년 9월 | 라이브 캡션, 스마트 재생, 청각 보조, 동장 네비게이션 | |
11 | 11 | 30 | 구굴 픽셀 5 등 |
2020년 9월 | 화면 녹화 정식 지원, 최소 사양 메모리 변경, 일회성 권한, 포그라운드 서비스 권한, 토스트 메시지 |
2. 사용자 측면에서 Android 10.0(Q)의 새로운 기능을 조사하시오.
- 앱 설치 화면 : APK를 설치할 때 전체 화면이 나타나는 것이 아닌 팝업 화면이 나타난다.
- 화면 녹화 : 스마트폰 전용 녹화 앱이 따로 필요없이 상단바를 내려서 찾으면 자체녹화를 할 수 있다. 상황에 따라 별도의 앱보다 유용 할 수도 있다.
- Lockdown 모드 : 비행기 모드의 확장판으로 기기의 모든 센서를 비활성화시키고 비행기 모드를 활성화한다.
- Ambient Display : 화면 내에 잠금 화면으로 이동했으며 기존에는 배터리가 하단에 알림 아이콘이 시계 밑에 존재했으나 이제는 상태표시줄로 이동하여 잠금 화면 또는 홈 화면으로 이동 시 더욱 자연스러운 느낌을 준다. 잠금 화면 또는 홈 화면으로 이동할 때 화면이 깜박이는 현상이 사라졌다.
3. 스마트폰의 운영체제별로 세계 및 우리나라의 최신 시장 점유율을 조사하시오.
구분 | 안드로이드 | 아이폰 | 윈도폰 | other |
2020 10월 (Global) | 72.93% | 26.53% | 0.03% | 0.51% |
2020 6월 (국내) | 76.5% | 23.4% | N/A | 0.1% |
4. 현재 OHA 컨소시엄에 참여 중인 회사를 조사하시오.
: 삼성전자, LG전자와 팬택, 구글, HTC, 델, 인텔, 모토로라 모빌리티, 퀄컴, 텍사스 인스트루먼츠, T-모바일, 엔비디아, 윈드 리버 시스템스 등
(OHA Website : www.openhandsetalliance.com/index.html)
5. 별도의 컴퓨터가 있다면 현재 시점에 가장 최신의 JDK, 안드로이드 SDK, 안드로이드 플랫폼, Android Studio를 설치하시오. 그리고 자신의 안드로이드 기기 버전에 맞는 플랫폼도 추가로 설치하시오.
Yes :))
'책 요약하기 > 코틀린을 활용한 안드로이드 프로그래밍' 카테고리의 다른 글
#5. 레이아웃 익히기 2021-01-29 (0) | 2021.01.29 |
---|---|
#4. 기본 위젯 익히기 2021-01-28 (0) | 2021.01.28 |
#3. 안드로이드를 위한 기본적인 Kotlin 문법 2021-01-27 (0) | 2021.01.27 |
#2. 안드로이드 프로그램 개발 과정 및 간략한 구성 2021-01-26 (0) | 2021.01.26 |
#0. Preview 2021-01-24 (0) | 2021.01.24 |