O의 이름은? 안드로이드 오레오의 신기능 핵심 정리

드디어 안드로이드 O의 공식 이름이 발표됐습니다. 바로 누구나 한 번쯤은 예상했을 오레오입니다. 이번 발표는 구글의 스페셜 이벤트인 일식(Eclipse)에서 안드로이드 O의 로고를 넣고 공개해서 구글의 센스에 다시 한번 감탄할 수밖에 없었는데요! 이미 Realm 아카데미에서 소개한 안드로이드 O의 새 기능!, 안드로이드 O 프리뷰 핵심 요약에 이어서 공식적으로 발표된 안드로이드 오레오를 살펴봅니다.

안드로이드 오레오의 새 기능 간단 살펴보기

이미 프리뷰를 통해 많은 기능이 알려졌지만, PIP, 노티피케이션, Java 8 지원, 어댑티브 아이콘 등 중요한 핵심 내용을 간단히 살펴보겠습니다.

사용자 관점에서의 변화

안드로이드 오레오가 도입되면 사용자들에게 가장 가시적으로 다가올 변화는 무엇일까요? 역시 PIP 모드가 가장 획기적인 것 같습니다!

이런 개발 뉴스를 더 만나보세요

PIP 모드

안드로이드 TV가 아닌 기기에서도 이제 마음대로 화면 크기를 조정하며 두 가지의 일을 할 수 있습니다. 앱에 적용하는 방법도 간단합니다.


public void onActionClicked(Action action) {
  if (action.getId() == R.id.start_pip) {
    getActivity().enterPictureInPictureMode();
  }
}

알림 Dots

앱 아이콘 위에 말풍선 형태로 알림을 제공해주는 새로운 기능도 생겼습니다.

또한, 개발자 관점에서는 안드로이드 O를 타깃으로 하는 앱은 하나 이상의 알림 채널을 만들어야 하도록 변경됩니다. 개별 알림에 대한 중요도가 없어지고 채널 단위로 중요도를 설정할 수 있습니다.

자동완성 프레임워크(Autofill framework)

기기의 자동 완성을 통해 사용자는 입력 양식을 채울 수 있게 됩니다. 계정이나 신용 카드 등에 적용할 수 있습니다. 이 기능은 운영체제에 통합되어 접근성이 높으므로 사용자는 다양한 방식으로 오토 필을 사용할 수 있습니다. 앱에 이 프레임워크에 맞는 데이터를 사용한다면 사용자가 더욱 편리하게 사용할 수 있겠네요!

개발자의 편의를 위해 클라이언트는 기본 뷰들이 자동으로 자동완성에 대응되며 여러 자동완성 서비스를 백엔드로 연결할 수 있습니다. LastPass 등의 서비스도 이미 오토필과 연동해서 안전하고 빠르게 체계적으로 사용자의 입력폼을 관리합니다.

백그라운드 제한동작 방식 변경

백그라운드에서 실행되는 앱의 개수와 동작 방식이 변경되면서 백그라운드에 있는 앱이 자원을 보다 효율적으로 사용할 수 있게 됩니다.

개발자 관점에서의 변화

안드로이드 오레오는 개발자가 더욱 앱을 쉽게 개발할 수 있도록 개선되었습니다. 자동으로 리사이징되는 텍스트뷰나 XML에서의 폰트, 적응형 아이콘 등을 만나보세요!

오토 리사이징 텍스트뷰

텍스트뷰가 자동으로 레이아웃에 맞게 리사이징됩니다. 텍스트뷰를 다루던 개발자들의 귀찮음을 해소해 주는 반가운 기능입니다.

어댑티브 아이콘

아이콘의 가장자리를 원하는 모양으로 바꿀 수 있습니다! 아이콘을 인터렉티브하게 움직일 수도 있고 런쳐나 숏컷, 설정 등 다양한 곳에서 사용할 수도 있게 됩니다.

숏컷 고정

앱 안에서 런쳐에 숏컷과 위젯을 고정할 수 있도록 할 수 있습니다. 사용자가 더 많이 앱의 숏컷과 위젯을 사용하면서 앱 활용도도 높일 수 있겠네요.

런타임 개선 Java 8 API 지원

드디어 Java 8 API를 지원합니다. 기존에는 새로운 컴파일러 Jack의 형태로 지원을 시도했었는데 Jack의 개발은 중단됐고 대신 기존 런타임을 확장하여 Java 8의 여러 기능을 지원합니다.

또한, 런타임도 크게 개선됐습니다! GC가 꽉 차지 않은 이상 지연 시간이 없으므로 다른 작업을 하면서 백그라운드에서 필요한 작업을 마음껏 할 수 있습니다.

컬러 프로파일 확대

색 선택 폭이 더욱 넓어졌습니다. WCG(Wide Color Gamut, 광색역) 디스플레이 지원이 추가되고 여러 단말에서 일관성 있게 색을 표시할 수 있도록 ICC 프로파일을 채택했으며 JPEG, PNG, WebP 형태로 비트맵에 임베드 할 수 있습니다.

웹뷰 개선

멀티 프로세스 모드가 웹뷰의 기본 값이 되며 앱에서 에러 핸들링이 가능해집니다.

리소스 타입에 Font 추가

리소스 타입에 폰트가 추가되면서 XML에서 폰트 패밀리를 정의하거나, 아래 코드처럼 XML 레이아웃에 폰트를 사용할 수 있습니다.

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:fontFamily="@font/lobster"/>

또한, 다운로드 가능한 폰트를 사용하면 APK에 폰트를 넣는 대신 shared provider에서 폰트를 불러올 수도 있습니다.

지금 시작해 보세요!

지금 바로 전체 변경 사항을 확인하고 안드로이드 개발자 사이트에서 안드로이드 오레오를 넥서스 5X, 6P, 픽셀에 받아서 새로운 트랜드에 맞춘 개발을 빠르게 시작해보세요.

기존 앱에 바로 적용하려면 마이그레이션 가이드를 확인하세요!

다음: Realm Java를 사용하면 안드로이드 앱 모델 레이어를 효과적으로 작성할 수 있습니다.

General link arrow white

컨텐츠에 대하여

이 컨텐츠는 저자의 허가 하에 이곳에서 공유합니다.


Eunjoo Im

Realm Asia 팀에서 일하는 임은주입니다. iOS와 안드로이드 개발자로, 현재 Realm의 기술 컨텐츠 생산 및 관리에 주력하고 있습니다.

Leonardo YongUk Kim

Leonardo YongUk Kim is a software developer with extensive experience in mobile and embedded projects, including: several WIPI modules (Korean mobile platform based on Nucleus RTOS), iOS projects, a scene graph engine for Android, an Android tablet, a client utility for black boxes, and some mini games using Cocos2d-x.

4 design patterns for a RESTless mobile integration »

close