게시자: Dave Burke (VP of Engineering)
이 글의 원문은 여기서 확인하실 수 있으며 블로그 리뷰에는 노현석(GDE)님이 참여해주셨습니다.
지난 2월에 저희는 개인정보 보호와 보안, 개발자 생산성에 더해 태블릿 및 대화면 지원을 핵심 테마로 Android 13의 첫 번째 개발자 프리뷰를 출시했습니다. 오늘은 앱에서 시도해 볼 수 있는 새로운 기능과 변경 사항이 반영된 Android 13 Developer Preview 2를 소개해 드리고자 합니다. Android가 개발자와 사용자를 위한 더 나은 플랫폼이 되도록 개발자 여러분의 의견을 들려주시기 바랍니다.
지난주 AOSP(Android 오픈소스 프로젝트)로 이동한 12L 기능에 이어 Android 13 Developer Preview 2도 공개되므로, 2억 5천만 개 이상 대화면 Android 기기를 활용하는 것이 더욱 수월해질 것입니다. Android 13, 태블릿, 그리고 Jetpack Compose 내 개발자 생산성 투자에 대해 자세히 알아보려면 #TheAndroidShow의 최신 에피소드를 확인해 보세요.
Developer Preview 2를 설명하기 전에, 지난 주의 새로운 소식들을 먼저 살펴보겠습니다. 저희는 AOSP의 12L 기능 출시를 공식 발표했고, 지원 가능한 모든 Pixel 기기에 앞으로 몇 주에 걸쳐 배포할 예정입니다. 12L은 태블릿에서 Android 12의 성능을 훨씬 높여 주며, 사용자가 화면 분할 모드로 즉시 앱을 드래그 앤 드롭할 수 있는 새로운 작업 표시줄, 알림 창과 잠금 화면의 새로운 대화면 레이아웃, 앱을 위해 개선된 호환성 모드 등의 업데이트를 포함되어 있습니다. 자세한 정보는 여기에서 확인해보세요.
12L은 업데이트 계획에 따라 올해 말부터 삼성, Lenovo, Microsoft의 태블릿 및 폴더블 기기에 제공될 예정이므로, 지금부터 그에 맞게 앱을 준비하시기 바랍니다. 여러 크기의 창을 사용하여 화면 분할 모드에서 앱을 테스트하고 다양한 방향으로 사용해 보면서, 특이 사항이 있을 경우 새로운 호환성 모드 변경 사항을 확인하시는 것이 좋습니다. 개발자를 위한 12L 관련한 자세한 내용은 여기에서 확인할 수 있습니다.
또한 12L의 대화면 기능이 Android 13에서는 기본 제공되므로, Android 12L을 실행하는 태블릿을 위한 기본 사항이 포함된다는 사실을 인지한 채로 Android 13에서 앱을 개발하고 테스트하실 수 있습니다. 저희는 대화면이 Android의 미래를 위한 핵심적인 기기가 될 것으로 보고 있으며, 태블릿, Chromebook, 폴더블 화면의 뛰어난 경험을 구축하는데 필요한 도구를 제공하기 위해 계속 투자하고 있습니다. 대화면에 맞게 최적화를 시작하는 방법에 대해 알아보고 대화면 개발자 리소스를 꼭 확인해 보세요.
그럼 이제부터 Android 13 Developer Preview 2의 새로운 기능에 대해 자세히 알아보겠습니다.
사용자는 누구나 자신이 사용하고 있는 기기의 리소스와 민감한 개인정보에 대해 신뢰할 수 있는 OS와 앱을 필요로 합니다. 개인정보 보호와 사용자 신뢰는 Android 제품 원칙의 핵심이며, Android 13에서 저희는 앞으로도 기기에 더 안전한 환경을 마련하고 사용자에게 더 많은 컨트롤을 제공하여 모두를 위한 책임 있는 고품질 플랫폼을 만드는 데 집중할 것입니다. Developer Preview 2의 새로운 기능은 다음과 같습니다.
알림 권한 - 사용자가 자신에게 가장 중요한 알림에만 집중할 수 있도록, Android 13에는 앱에서 알림을 보내기 위한 새로운 런타임 권한인 POST_NOTIFICATIONS을 도입했습니다. Android 13을 대상으로 하는 앱이 알림을 게시하려면 이제 사용자에게 알림 권한을 요청해야 합니다. Android 12 이하를 대상으로 하는 앱의 경우는 시스템이 개발자 대신 업그레이드 플로우를 처리하며, 플로우는 계속 미세 조정됩니다. 사용자에게 더 많은 컨텍스트와 컨트롤을 제공하려면 최대한 빨리 Android 13을 대상으로 지정하고 앱에서 알림 권한을 요청하는 것이 좋습니다. 여기서 자세히 알아보시기 바랍니다.
Android 13의 알림 권한 대화상자
개발자의 다운그레이드 권한 - 일부 앱은 특정 기능을 사용하거나 이전 Android 버전의 민감한 권한을 유지하는 데 사용자가 이전에 부여했던 특정 권한이 더 이상 필요하지 않을 수도 있습니다. Android 13은 이전에 부여된 런타임 권한을 다운그레이드하여 앱이 사용자 개인정보를 보호할 수 있도록 해 주는 새로운 API를 제공합니다.
컨텍스트 등록 리시버의 더 안전한 내보내기 - Android 12에서 개발자는 매니페스트 선언 인텐트 리시버의 내보내기 가능성을 선언해야 했습니다. Android 13에서는 비시스템 소스에 대해 리시버를 등록할 때 RECEIVER_EXPORTED 또는 RECEIVER_NOT_EXPORTED 플래그를 추가하여 컨텍스트 등록 리시버에 대해서도 같은 작업을 수행해야 합니다. 따라서 원치 않을 경우에는 브로드캐스트를 보낼 다른 앱에 리시버가 제공되지 않게 할 수 있습니다. Android 13에서 필수는 아니지만, 앱 보안을 위한 조치로 내보내기 가능성을 선언하실 것을 권장합니다.
저희는 Android 13에서 사용자가 세련된 경험과 더 나은 성능을 제공하는 데 도움이 될 만한 도구를 더 많이 제공하고자 노력하고 있습니다. 오늘 출시되는 버전의 업데이트 사항 중 일부를 소개합니다.
일본어 텍스트 줄 바꿈 기능 개선 - TextView는 이제 더 읽기 쉬운 세련된 일본어 앱을 위해 문자 대신 분세츠(문절, 자연스럽게 들리는 가장 작은 단어 단위)나 구문별로 텍스트 줄 바꿈을 할 수 있습니다. TextView와 함께 android:lineBreakWordStyle="phrase"를 사용하여 이 줄 바꿈을 이용할 수 있습니다.
구문별 줄 바꿈을 사용할 때(아래)와 사용하지 않을 때(위)의 일본어 텍스트
비라틴어 스크립트의 줄 높이 개선 - Android 13은 각 언어에 맞게 조정된 줄 높이를 사용하여 비라틴어 스크립트(예: 타밀어, 버마어, 텔루구어, 티베트어)의 표시 방법을 보완합니다. 새로운 줄 높이를 사용해 문자가 잘리는 문제를 방지하고 문자의 위치 지정을 개선합니다. Android 13을 대상으로 지정하기만 해도 앱이 이런 개선 사항을 활용할 수 있습니다. 변경 사항이 비라틴어의 UI에 영향을 줄 수 있으므로, 새로운 줄 간격 사용 시 앱을 테스트하시기 바랍니다.
Android 13을 대상으로 하는 앱에서 개선된 비라틴어 스크립트의 줄 높이(아래)
텍스트 변환 API - 일본어나 중국어 같은 언어를 사용하는 이들은 음성 문자 변환 입력 방법을 이용하는데, 이 때문에 검색이나 자동 완성 같은 기능의 속도가 느려질 때가 많습니다. Android 13에서는 사용자가 원하는 내용을 더 빠르고 쉽게 찾을 수 있도록 앱이 새로운 텍스트 변환 API를 호출할 수 있습니다. 예를 들어, 이전에는 일본어 사용자가 (1) 검색어(예: 장소 또는 앱 이름)의 발음으로 히라가나를 입력하고, (2) 키보드를 사용하여 히라가나 문자를 한자로 변환한 다음, (3) 한자로 다시 검색해야 (4) 검색 결과를 얻을 수 있었습니다. 새로운 텍스트 변환 API를 사용할 경우, 일본어 사용자는 2단계와 3단계를 건너뛰고 히라가나를 입력하면 그 즉시 한자 검색 결과를 볼 수 있습니다.
컬러 벡터 글꼴 - Android 13은 COLR 버전 1(스펙, 소개 영상) 글꼴에 대한 렌더링 지원을 추가하고 시스템 그림 이모티콘을 COLRv1 형식으로 업데이트합니다. COLRv1은 어떤 크기에서든 빠르고 또렷하게 렌더링되는 새로운 초소형 글꼴 형식입니다. 대부분의 앱에서 COLRv1이 작동하며 시스템이 모든 것을 처리합니다. Developer Preview 2부터 앱에 대해 COLRv1을 선택할 수 있습니다. 앱이 자체 텍스트 렌더링을 구현하고 시스템 글꼴을 사용하는 경우, 그림 이모티콘 렌더링을 선택하고 테스트하는 것이 좋습니다. Chrome 발표에서 COLRv1에 대해 자세히 알아보세요.
COLRv1 벡터 그림 이모티콘(왼쪽)과 비트맵 그림 이모티콘
Bluetooth LE Audio - LE(Low Energy) Audio는 Bluetooth 클래식을 대체하고 새로운 사용 사례 및 연결 토폴로지를 가능케 하고자 제작된 차세대 무선 오디오입니다. 이를 통해 사용자는 오디오를 친구와 가족에게 공유하고 방송하거나, 정보, 엔터테인먼트, 접근성을 목적으로 하는 공개 방송을 구독할 수 있습니다. Bluetooth LE Audio는 사용자가 배터리 수명 단축 없이 하이파이 오디오를 수신하고, Bluetooth Classic에서는 불가능했던 다양한 사용 사례 간의 매끄러운 전환을 체험하도록 설계되었습니다. Android 13에서는 LE Audio의 기본 제공 지원이 추가되므로, 개발자는 호환되는 기기에서 새로운 기능을 무료로 얻을 수 있습니다.
MIDI 2.0 - Android 13에서는 USB를 통해 MIDI 2.0 하드웨어를 연결하는 기능을 비롯해 새로운 MIDI 2.0 표준에 대한 지원이 추가됩니다. 이 최신 표준에서는 해상도가 컨트롤러용으로 높아졌고, 비서구권 억양에 대한 지원이 개선되었으며, 음별 컨트롤러를 통해 표현력이 향상되었습니다.
저희는 새 플랫폼 버전을 출시할 때마다 앱 호환성을 최우선시하여 더 빠르고 원활한 업데이트를 이루고자 합니다. Android 13에서는 개발자 여러분에게 시간을 더 드리기 위해 앱에 어떤 변경 사항을 적용할지 선택할 수 있게 했을 뿐 아니라, 더 신속한 준비에 도움이 되도록 관련 도구와 프로세스를 업데이트했습니다.
Developer Preview 2가 순조롭게 출시되어 안정성이 전반적으로 계속 개선되는 가운데, 이제는 새로운 기능과 변경 사항을 시험해 보고 의견을 주실 차례입니다. 특히, 플랫폼 변경 사항이 앱에 미치는 영향을 비롯해 API에 대해서도 자세히 의견을 남겨주시면 감사하겠습니다. 여러분의 생각을 알려주시거나 문제를 신고하려면 피드백 페이지를 방문해주시기 바랍니다.
지금은 호환성 테스트를 시작하고 어떤 작업을 수행할지 파악할 좋은 시기이기도 합니다. 호환 가능한 업데이트를 Android 13 Beta 1로 출시할 수 있도록, 이 작업을 일찍 진행하시기를 권장합니다. 당장 앱의 targetSdkVersion을 변경할 필요는 없지만, 개발자 옵션에서 동작 변경 전환 기능을 사용하여 Android 13의 옵트인 변경 사항으로 앱이 어떤 영향을 받을지 미리 알아보시는 것이 좋습니다.
2022년 6월에 플랫폼 안정성 단계에 도달하면 앱에 표시되는 모든 시스템 동작, SDK/NDK API, 비 SDK 목록이 최종 확정됩니다. 이후 최종 호환성 테스트를 마무리하고 완전히 호환 가능한 버전의 앱, SDK 또는 라이브러리를 출시할 수 있습니다. 개발자 여러분을 위한 자세한 일정은 여기에서 확인하세요.
개발자 옵션의 앱 호환성 전환 화면
이번 개발자 프리뷰에는 Android 13의 기능을 사용하고, 앱을 테스트하고, 의견을 제시하는 데 필요한 모든 것이 담겨 있습니다. 오늘 바로 Pixel 6 Pro, Pixel 6, Pixel 5a 5G, Pixel 5, Pixel 4a(5G), Pixel 4a, Pixel 4 XL 또는 Pixel 4 기기에 기기 시스템 이미지를 플래시하여 앱 테스트를 시작하실 수 있습니다. Pixel 기기가 없으면 Android Studio Dolphin의 Android Emulator로 64비트 시스템 이미지를 사용하셔도 좋습니다. 더욱 광범위한 테스트를 위해 GSI 이미지를 사용할 수도 있습니다. Pixel 기기에 프리뷰 빌드를 이미 설치하셨다면 무선 업데이트 방식으로 이 업데이트 이후의 모든 프리뷰와 베타 버전을 자동으로 받게 됩니다. Android 13을 다운로드 받는 방법은 여기서 자세히 확인할 수 있습니다.
더욱 상세한 내용은 Android 13 개발자 사이트를 참조 부탁드립니다.