버전 별 주요 변화 및 지원 기능 정리

2019. 6. 5. 13:55개발나들이/android

안드로이드 앱을 개발할 때 가장 먼저 고려해야 하는 것들 중 한가지를 꼽으라면 

앱의 최소 지원 버전 및 최대 지원 버전을 정하는 것이라 생각한다. 

이에 각 OS 버전별로 지원하는 기능 및 특징들을 정리하는 것도 개발에 도움이 될 것 같아

각각의 특징들을 정리해보고자 한다.


1. 젤리빈 (Jelly Bean, 4.3)

아이폰과 비교해 느리다고 평가받던 안드로이드 OS가 그래픽에 중점을 둔 변화를 통해 충분히 쓸만하다는 평가를 받게 된 버전.

[특징]

그래픽 성능 향상 : 그래픽 그리기 속도를 빠르게 하는 버퍼링 기술등을 사용하여 좀 더 빠르고 부드러운 화면과 애니메이션 처리 그리고 터치 반응을 빨리 처릴 수 있음

- 텍스트 폰트 기능 강화 : 웹뷰에서 세로 방향 텍스트를 지원하고 볼드체 폰트가 없어도 합성 볼드체를 만들어 보여주는 기능을 추가

- 확장 가능한 알림 메세지 : 알림메세지 스타일을 미리 정해진 세가지 스타일 중 하나를 선택하거나 필요에 따라 확장하여 만들 수 있도록 함

- 위젯 크기 변경 가능 : 사용자가 위젯의 크기를 바꿀 수 있도록 하며, 위젯의 크기가 바뀌는 시점을 알 수 있어 크기가 바뀔 떄 필요한 기능을 추가할 수 있음

- 네트워킹 기능 강화 : 안드로이드 빔을 사용할 떄 동영상 등 용량이 큰 데이터가 있다면 블루투스 전환 가능, DNS 기반의 WiFi 서비스 검색 기능과 WiFi Direct 서비스 검색 기능을 추가

- 웹뷰 기능 강화 : 웹뷰의 그래픽과 애니메이션 성능 향상 및 Javascript 엔진의 성능 향상

- 푸쉬 메세지 상용화 : 여러가지 제약을 두었던 연구실 수준의 서비스를 GCM 서비스로 상용화. 한번에 여러 단말로 메세지를 전송할 수 있도록 멀티캐스트를 지원, 간단한 데이터를 담아 보낼 수 있도록 Payload 영역을 할당


2. 킷캣 (KitKat, 4.4) 

좀 더 빠른 그래픽과 웹 브라우징에 중점을 둔 버전

[특징]

- 최적화 : 저사양 단말( ex - 512MB 메모리) 에서도 동작할 수 있도록 메모리 관리를 최적화시킴

- 프린팅 프레임워크  어떤 콘텐츠라도 무선랜이나 구글 클라우드 프린트와 같은서비스를 이용해 프린트 가능, 새로운 프린트 API를 이용해 앱을 위한 프린팅 기능을 추가할 수 있음

- 저장 공간 접근 프레임워크 : 사용자가 문서, 이미지 및 기타 파일들을 공통 UI를 이용해 쉽게 전근하고 띄워볼 수 있ㄴ도록 하는 프레임워크를 제공

- 센서 배치 처리 : 센서를 사용할때 베터리 소모를 줄이기 위해 배치 처리 방식을 도입

- SMS  프로바이더 변경 : 단말의 SMS 앱을 대체할 때 디폴트 메시징 앱으로 설정할 수 있도록 함

- 전체 화면 모드 : 상태바가 없는 전체 화면 모드를 설정할 수 있음

- 애니메이션을 위한 트랜지션 프레임워크 : 애니메이션을 위해 각각의 화면을 레이아웃으로 정의하고 화면이 넘어갈때마다 정해진 애니메이션이 동작할 수 있는 방법을 제공

크롬 기반 웹뷰 : 웹뷰를 크롬으로 바꾸어 HTML5가 더 잘 지원되고 성능이 좋은브라우징이 가능하도록 수정, 웹앱이나 하이브리드앱을 위한 웹뷰 최적화


3. 롤리팝 (LolliPop, 5.0)

사용자가 바라보는 화면의 디자인 개편을 시도하였으며 지속적으로 그래픽과 웹뷰의 성능을 개선함

[특징]

새로운 디자인 : Material Design을 적용, 새로운 느낌의 사용자 인터페이스로 전면 개편

- 시스템 성능 향상 : OpenGl ES 3.1을 지원, 게임이나 그래픽 기반의 앱이 좀 더 부드럽고 빠른 2D와 3D 그래픽을 사용할 수 있도록 함

- 멀티미디어 기능 향상 : 새로운 오디오 캡처 설계를 통해 음성 입력의 지연  시간을 줄이고 캡처를 빨리할 수 있도록 함

- 웹뷰 향상 : 크롬 기반으로 변경된 웹뷰에 WebRTC, WebAudio, WebGL 기능을 지원, 웹뷰가 구글 플레이에서 업데잍를 할 수 있도록 만들어 버그 수정 및 새로운 기능이 적용된 버전을 바로 업데이트할 수 있도록 함.


4. 마쉬멜로우 (Marshmallow, 6.0)

기기에 대한 권한영역을 향상시키는 등 전체적으로 보안에 중심을 둔 변화가 이루어졌다

[특징]

런타임 권한 부여 : 기존에는 앱을 설치할 때 일괄 부여하던 권한을 일반 권한과 위험 권한으로 분류한 후 위험 권한은 앱을 실행할 때 부여하는 방식으로 변경

- 지문 인식 스캐너 지원 : 지문 인식 장치가 있는 단말의 경우 지문을 인식하면 앱에서 지문을 이용해 사용자를 확인할 수 있도록 지문 인식 스캐너를 지원

- USB Type-C/3.1 지원 : 새로운 표준 USB인 Type-C를 지원, 빠른 충전, 빠른 데이터 통신이 가능하도록 함

- 앱 백업과 복원 : 앱 백업을 설정하면 24시간마다 자동으로 앱의 데티러를 자동으로 백업, 필요할 시 복원할 수 있도록 함


5. 누가 (Nougat, 7.0)

멀티 윈도우 지원 및 알림 기능을 확장함으로써 사용자의 Device 사용에 대한 접근성을 향상시키는데 주력함.

[특징]

멀티윈도우 지원 : 한 화면에 두 개의 앱을 동시에 실행할 수 있도록 함

알림 기능 확장 : 알림 방식을 바꾸어 좀 더 쉽고 바른 방식으로 확장함. 알림 템플릿을 이용, 코드 수정을 최소화하고 스타일 설정이 가능하도록 하였고 실시간 커뮤니케이션 앱을 위한 답장 기능을 지원하며 커스텀 뷰를 만들어 사용할 수 있도록 함

-  단말 성능 향상 : ART 런타임에 JIT 컴파일러 기능을 추가하여 성능을 향상시키고 베터리 소모를 줄이는 도즈(Doze) 모드의 기능을 좀 더 효율화 시킴. 앱이 백그라운드에서 실행될 때 RAM 소모를 줄이고 데이터 통신 사용량을 줄일 수 있는 데이터 세이버 (Data Saver)를 제공함.

- 빠른 설정 타일 API : 빠른 설정은 중요한 설정이나 액션을 수행할 수 있도록 알림 영역에서 바로 접근할 수 있드록 만든 것으로, 빠른 설정 타일을 만들 수 있는 API 를 제공하여 사용자가 특정 액션을 빨리 수행할 수 있도록 함.

- 텔레포니 기능 확장 : 차단 번호를 API로 설정할 수 있고 기본 전화 앱이 걸려오는 전화를 거부하거나 통화 기록에 남지 않도록 설정할 수 있음


6. 오레오 (Oreo, 8.0)

주로 누가 버전에서 확장된 기능들을 개선하는 등 사용자가 기존 기능들을 좀 더 편리하게 사용할 수 있도록 사용성 향상에 주력함.

[특징]

- PIP(Picture In Picture) 모드 : 한 화면에 두 개의 앱을 동시에 실행할 수 있어서 오른쪽 아래의 작은 영역에 동영상이나 앱을 실행시켜 놓을 수 있음

- 다양해진 알림 기능 : 아이콘 위에 알림을 위한 점 표시(Notification Dot)와 알림 윈도우를 표시할 수 있어서 좀 더 다양한 형식으로 알림을 보여줌.

- 앱 보안 체크 : Play Protect를 이용한 앱 보안 체크로써 위험한 동작을 하는 앱을 사전에 체크할 수 있음

- 자동 완성 : 로그인할 떄 자동으로 이전 로그인 성공 정보를 채워 넣을 수 있음. 입력상자에 필요한 텍스트 등을 자동 완성 기능으로 넣어줌으로써 좀 더 편리한 사용이 가능하도록 함.

- 다양함 emoji 제공 : 사용할 수 있는 작은 아이콘이 많아짐.