![Android 5.0을 보여주는 시계, 모바일, 가로 방향 태블릿을 포함한 다양한 기기 디스플레이](https://developer.android.google.cn/static/images/home/l-hero_2x.png?authuser=8&hl=ko)
Android 역대 최대 규모의 야심 찬 Android 버전인 Android 5.0 Lollipop에 오신 것을 환영합니다!
이 릴리스에는 사용자를 위한 새로운 기능과 개발자를 위한 수많은 새로운 API가 가득합니다. Lollipop은 휴대전화, 태블릿, 웨어러블 기기에서 TV, 자동차에 이르기까지 Android를 더욱 확장합니다.
새로운 개발자 API에 관한 자세한 내용은 Android 5.0 API 개요를 참고하세요. 또는 www.android.com에서 소비자용 Android 5.0에 관해 자세히 알아보세요.
참고: 추가 기능과 수정이 포함된 Android 5.1 Lollipop MR1 업데이트를 사용할 수 있습니다. 자세한 내용은 Android 5.1 API 개요를 참고하세요.
머티리얼 디자인
Android 5.0은 Android에 머티리얼 디자인을 적용하고 새로운 디자인 패턴을 앱에 쉽게 통합하기 위한 확장된 UI 도구 키트를 제공합니다.
새로운 3D 뷰를 사용하면 z 레벨을 설정하여 요소를 뷰 계층 구조 위로 올리고 이동 시에도 실시간 그림자를 드리울 수 있습니다.
내장된 활동 전환은 아름다운 애니메이션 모션을 통해 사용자를 한 상태에서 다른 상태로 원활하게 유도합니다. 머티리얼 테마는 활동 간에 공유된 시각적 요소를 사용하는 기능을 비롯한 활동 전환을 추가합니다.
영화를 다시 보려면 기기 화면을 클릭합니다.
앱에서 버튼과 체크박스, 기타 터치 컨트롤에 물결 애니메이션을 이용할 수 있습니다.
또한, XML에서 벡터 드로어블을 정의하고 다양한 방식으로 애니메이션을 적용할 수 있습니다. 벡터 드로어블은 단색 인앱 아이콘에 적합하며, 정의 손실 없이 확장 가능합니다.
RenderThread라는 새로운 시스템 관리 처리 스레드는 기본 UI 스레드에 지연이 발생하더라도 애니메이션을 원활하게 유지합니다.
성능 초점
Android 5.0은 더욱 빠르고, 원활하며 강력한 컴퓨팅 환경을 제공합니다.
Android는 이제 AOT (Ahead-Of-Time), JIT (Just-In-Time) 및 해석된 코드를 혼합하여 지원하기 위해 완전히 새롭게 빌드된 새로운 ART 런타임에서만 실행됩니다. ARM, x86과 MIPS 아키텍처에서 지원되며 64비트와 완전히 호환됩니다.
ART는 앱 성능과 반응성을 개선합니다. 효율적인 가비지 컬렉션이 GC 이벤트의 정지 횟수와 기간을 낮추어서 앱이 프레임을 건너뛰지 않아도 되도록 v-sync 창에 알맞게 맞추어 집니다. 또한, ART는 메모리를 동적으로 이동해서 포그라운드용 성능을 최적화합니다.
Android 5.0에는 Nexus 9의 NVIDIA Tegra K1에서 사용하는 64비트 아키텍처에 대한 플랫폼 지원이 도입되었습니다. 최적화는 더욱 큰 주소 공간을 제공하고 특정 컴퓨터 부하에 대한 성능을 개선합니다. Java 언어로 작성된 앱은 자동으로 64비트 앱으로 실행되며 수정할 필요가 없습니다. 네이티브 코드를 사용하는 앱을 위해 ARM v8 및 x86-64, MIPS-64에 새로운 ABI를 지원하도록 NDK를 확장했습니다.
Android 5.0은 더욱 원활한 성능에 계속 초점을 맞추고 개선된 A/V 동기화를 제공합니다. 오디오 및 그래픽 파이프라인은 더 정확한 타임스탬프를 위해 계측되고, 동영상 앱과 게임에서 원활하게 동기화된 콘텐츠를 표시할 수 있습니다.
알림
![헤드업 알림이 표시된 모바일 상단 섹션](https://developer.android.google.cn/static/images/versions/notification-headsup.png?authuser=8&hl=ko)
Android 5.0의 알림은 가시성, 접근성, 구성 능력이 개선되었습니다.
사용자가 원하는 경우 다양한 알림 세부정보가 잠금 화면에 표시될 수 있습니다. 사용자는 안전한 잠금 화면에 알림 콘텐츠가 표시되지 않거나, 일부만 표시되거나 모두 표시되도록 선택할 수 있습니다.
수신 전화와 같은 주요 알림 알림이 헤드업 알림에 표시됩니다. 헤드업 알림이란 사용자가 현재 앱을 나가지 않고도 응답하거나 닫을 수 있는 작은 플로팅 창입니다.
이제 알림에 새 메타데이터를 추가하여 관련 연락처 (순위 지정), 카테고리, 우선순위를 수집할 수 있습니다.
새로운 미디어 알림 템플릿은 "좋아요"와 같은 사용자 지정 컨트롤을 포함하여 최대 6개의 작업 버튼으로 알림에 대한 일관된 미디어 컨트롤을 제공하므로 더 이상 RemoteViews가 필요하지 않습니다.
대형 화면에서의 앱
Android TV는 앱의 대형 화면 환경을 위한 완전한 TV 플랫폼을 제공합니다. Android TV는 사용자가 콘텐츠를 쉽게 탐색하고 개인화된 추천과 음성 검색을 이용할 수 있는 단순화된 홈 화면 경험을 중심으로 작동합니다.
이제 Android TV를 통해 앱 또는 게임 콘텐츠를 위한 크고 대담한 환경을 생성하고 게임 컨트롤러 및 기타 입력 기기와의 상호작용을 지원할 수 있습니다. Android는 영화 같은 텔레비전용 3m UI를 빌드할 수 있도록 v17 지원 라이브러리에 leanback UI 프레임워크를 제공합니다.
Android TV 입력 프레임워크 (TIF)를 사용하면 TV 앱이 HDMI 입력, TV 튜너, IPTV 수신기와 같은 소스의 동영상 스트림을 처리할 수 있습니다. 또한, TV 입력에 의해 게시된 메타데이터를 통해 라이브 TV 검색과 추천을 활성화하고 HDMI-CEC 제어 서비스를 포함하여 하나의 리모컨으로 여러 기기를 처리합니다.
TV 입력 프레임워크는 다양한 라이브 TV 입력 소스에 액세스를 제공하고 사용자가 콘텐츠를 탐색하고, 보고, 즐길 수 있도록 단일 사용자 인터페이스에 이들을 통합합니다. 콘텐츠를 위한 TV 입력 서비스를 빌드하면 TV 기기에서 콘텐츠의 접근성을 개선하는 데 도움이 될 수 있습니다.
문서 중심 앱
![새롭게 디자인된 개요 스페이스(이전 명칭: '최근')를 보여주는 휴대기기](https://developer.android.google.cn/static/images/versions/recents_screen_2x.png?authuser=8&hl=ko)
문서 중심 Recents.
Android 5.0에는 더욱 다양한 목적에 활용할 수 있고 멀티태스킹에 유용하도록 새로 디자인된 Overview 공간(이전의 Recents)이 도입되었습니다.
새로운 API를 사용하면 앱에서 다른 최근 화면과 함께 개별 문서로 별도 액티비티를 표시할 수 있습니다.
동시 문서를 활용하면 사용자가 더 많은 콘텐츠나 서비스에 즉시 액세스할 수 있습니다. 예를 들어 동시 문서를 사용하여 생산성 앱에 파일을 표시하거나 게임에서 플레이어 경기를 표시하거나 메시징 앱에서 채팅을 표시할 수 있습니다.
고급 연결
Android 5.0에는 앱이 저전력 블루투스 (BLE)로 동시 작업을 수행할 수 있는 새로운 API가 추가되어 검색 (중앙 기기 모드)과 광고 (주변기기 모드)가 모두 가능합니다.
새로운 멀티 네트워킹 기능을 사용하면 앱에서 사용 가능한 기능(예: Wi-Fi, 셀룰러, 데이터 전송량 제한 있음)을 쿼리하거나 특정 네트워크 기능을 제공하는지 여부를 쿼리할 수 있습니다. 그리고 앱은 연결을 요청하고 연결 손실이나 기타 네트워크 변경에 반응할 수 있습니다.
이제 NFC API를 통해 앱에서 NFC 애플리케이션 ID (AID)를 동적으로 등록할 수 있습니다. 또한, 활성 서비스당 선호하는 카드 에뮬레이션 서비스를 설정하고 UTF-8 텍스트 데이터를 포함하는 NDEF 레코드를 생성합니다.
고성능 그래픽
Khronos OpenGL ES 3.1 지원으로 이제 지원되는 기기에서 게임 및 기타 앱에 최고 성능의 2D 및 3D 그래픽 기능을 제공합니다.
![Gameloft의 Rival Knights 게임플레이를 보여주는 태블릿](https://developer.android.google.cn/static/images/versions/rivalknights.png?authuser=8&hl=ko)
Gameloft의 Rival Knights는 AEP의 ASTC (Adaptive Scalable Texture 예상)와 ES 3.1의 컴퓨팅 셰이더를 사용하여 HDR (High Dynamic Range) Bloom 효과를 실현하고, 더욱 상세한 그래픽을 제공합니다.
OpenGL ES 3.1은 계산 셰이더, 스텐실 텍스처, 가속된 시각 효과, 고급 ETC2/EAC 텍스처 압축, 고급 텍스처 렌더링, 표준화된 텍스처 크기, 렌더 버퍼 형식 등을 추가합니다.
Android 5.0에는 공간 배치 셰이더, 도형 셰이더, ASTC 텍스처 압축, 샘플별 보간 유형 및 셰이딩, 기타 고급 렌더링 기능과 같은 기능에 액세스할 수 있는 OpenGL ES 확장 프로그램 모음인 Android Extension Pack (AEP)도 도입되었습니다. AEP를 사용하면 다양한 GPU에 고성능 그래픽을 제공할 수 있습니다.
더욱 강력한 오디오
새로운 오디오 캡처 디자인은 지연 시간이 짧은 오디오 입력을 제공합니다. 새로운 디자인에는 읽을 때를 제외하고 절대 차단하지 않는 빠른 캡처 스레드, 기본 샘플 속도, 채널 카운트, 비트 깊이의 빠른 트랙 캡처 클라이언트, 리샘플링, 업/다운 채널 믹스, 업/다운 비트 깊이를 제공하는 일반 캡처 클라이언트 등이 포함되어 있습니다.
다중 채널 오디오 스트림 믹싱을 통해 전문 오디오 앱에서 5.1 및 7.1 채널을 비롯한 최대 8개 채널을 믹스할 수 있습니다.
앱은 미디어 콘텐츠를 노출하고 다른 앱의 미디어를 탐색한 다음 재생을 요청할 수 있습니다. 콘텐츠는 쿼리 가능한 인터페이스를 통해 노출되므로 기기에 존재하지 않아도 됩니다.
앱은 특정 언어, 품질, 지연 시간 등급과 관련된 음성 프로필을 통해 텍스트 음성 변환 합성을 세밀하게 제어할 수 있습니다. 새로운 API는 합성 오류 검사, 네트워크 합성, 언어 탐색, 네트워크 대체 지원도 개선합니다.
Android에는 이제 표준 USB 오디오 주변기기에 대한 지원 기능이 포함되어 사용자가 USB 헤드셋, 스피커, 마이크 또는 기타 고성능 디지털 주변기기를 연결할 수 있습니다. Android 5.0은 Opus 오디오 코덱도 지원합니다.
이제 미디어 재생을 제어하는 새로운 MediaSession
API를 통해 화면과 기타 컨트롤러에서 일관된 미디어 컨트롤을 더 쉽게 제공할 수 있습니다.
향상된 카메라 및 동영상
Android 5.0에는 YUV, Bayer RAW 등의 원시 형식과 노출 시간, ISO 감도, 프레임당 프레임 지속 시간 등의 제어 매개변수를 캡처할 수 있는 모든 새로운 카메라 API가 도입되었습니다. 완전히 동기화된 새로운 카메라 파이프라인을 사용하면 지원되는 기기에서 30 FPS의 속도로 압축되지 않은 전체 해상도 YUV 이미지를 캡처할 수 있습니다.
새 API는 이미지 캡처를 더욱 세부적으로 제어할 수 있을 뿐만 아니라 카메라 속성과 기능에 관한 자세한 정보를 노출하고 각 프레임의 캡처 설정을 설명하는 메타데이터를 제공합니다.
네트워크를 통해 동영상 스트림을 전송하는 앱은 이제 H.265 고효율 동영상 코딩 (HEVC)을 활용하여 동영상 데이터의 인코딩 및 디코딩을 최적화할 수 있습니다.
또한 Android 5.0은 멀티미디어 터널링 지원을 추가하여 초고화질 (4K) 콘텐츠를 위한 최상의 환경과 압축된 오디오 및 동영상 데이터를 함께 재생하는 기능을 제공합니다.
직장에서의 Android
![사용자의 개인 앱과 업무용 앱을 통합하여 보여주는 모바일 앱(쉽게 식별할 수 있도록 배지가 달려 있음)](https://developer.android.google.cn/static/images/android-5.0/managed_apps_launcher@2x.png?authuser=8&hl=ko)
사용자는 개인 앱과 직장 앱의 통합 뷰를 볼 수 있으며 앱은 쉽게 식별할 수 있도록 배지가 달려 있습니다.
엔터프라이즈 환경에 BYOD(Bring Your Own Device)를 사용 설정하기 위해 새로운 관리 프로비저닝 프로세스가 기기에 안전한 직장 프로필을 만듭니다. 런처에서 앱은 직장 배지와 함께 표시되어 앱과 데이터를 IT 관리자가 직장 프로필 내에서 관리한다는 것을 나타냅니다.
개인 및 업무 프로필의 알림은 모두 통합된 뷰에서 볼 수 있습니다. 각 프로필의 데이터는 두 프로필에서 동일한 앱을 사용할 때를 포함하여 항상 별도로 보관되고 서로에게서 안전하게 보호됩니다.
회사 소유 기기의 경우 IT 관리자가 새 기기를 시작하고 기기 소유자로 구성할 수 있습니다. 고용주는 전역 기기 설정을 구성할 수 있는 이미 설치된 기기 소유자 앱으로 이러한 기기를 발급할 수 있습니다.
화면 캡처 및 공유
Android 5.0에서는 앱에 화면 캡처와 화면 공유 기능을 추가할 수 있습니다.
사용자 권한이 있으면 원하는 경우 디스플레이에서 비보안 비디오를 캡처하여 네트워크를 통해 전달할 수 있습니다.
새로운 유형의 센서
Android 5.0에서는 새로운 기울임 감지기 센서가 지원되는 기기에서 활동 인식을 개선하는 데 도움이 되며 심박수 센서는 기기를 터치하는 사람의 심박수를 보고합니다.
이제 새로운 상호작용 복합 센서를 사용하여 깨우기 동작, 들어오기 동작, 보기 동작과 같은 특수한 상호작용을 감지할 수 있습니다.
Chromium WebView
![Chromium WebView 로고](https://developer.android.google.cn/static/images/kk-chromium-icon.png?authuser=8&hl=ko)
Android 5.0의 최초 버전에는 Chromium M37 버전에 기반한 WebView
용 Chromium 버전이 포함되며, WebRTC, WebAudio 및 WebGL 지원이 추가됩니다.
Chromium M37에는 모든 웹 구성요소 사양(맞춤 요소, Shadow DOM, HTML 가져오기, 템플릿)도 기본적으로 지원됩니다. 즉, 폴리필 없이 WebView에서 Polymer와 머티리얼 디자인 요소를 사용할 수 있습니다.
Android 4.4 이후부터 WebView가 Chromium을 기반으로 했지만 이제 Google Play에서 Chromium 레이어를 업데이트할 수 있습니다.
Chromium의 새 버전이 나오면 사용자는 Google Play에서 업데이트하여 WebView의 최신 개선 사항과 버그 수정을 받고, Android 5.0 이상에서 WebView를 사용하여 앱에 최신 웹 API와 버그 수정을 제공할 수 있습니다.
접근성 및 입력
새로운 접근성 API는 시력이 정상인 사용자가 상호작용할 수 있는 화면에서 창 속성 상세 정보를 조회하고 UI 요소에 대해 표준 또는 사용자 지정 입력 동작을 정의할 수 있습니다.
새로운 입력 메서드 편집기(IME) API는 입력 메서드에서 직접 다른 IME로 더욱 빠르게 전환할 수 있게 해 줍니다.
배터리 효율적인 앱 빌드를 위한 도구
새로운 작업 예약 API를 사용하면 나중에 또는 기기가 충전 중이거나 Wi-Fi에 연결되어 있을 때와 같이 지정된 조건에서 실행되도록 시스템이 작업을 지연시켜 배터리 수명을 최적화할 수 있습니다.
새로운 dumpsys batterystats
명령어는 시스템 전체의 전력 사용량을 파악하고 앱이 기기 배터리에 미치는 영향을 이해하는 데 사용할 수 있는 배터리 사용량 통계를 생성합니다. 전력 이벤트 내역, UID 및 시스템 구성 요소당 대략적인 전력 사용량 등을 살펴볼 수 있습니다.
![새로운 Battery Historian 도구를 사용한 배터리 관련 디버깅 시각화](https://developer.android.google.cn/static/images/versions/battery_historian.png?authuser=8&hl=ko)
Battery Historian은 dumpsys batterystats
의 통계를 배터리 관련 디버깅을 위한 시각화로 변환하는 새로운 도구입니다. https://github.com/google/battery-historian에서 찾을 수 있습니다.