
Now in Android에 오신 것을 환영합니다! 이곳은 최신 Android 개발 소식을 전하는 가이드입니다.
이번 에피소드에서는 Android 16 베타 버전과 비즈니스와 Gemini Multimodal를 위한 안드로이드 스튜디오의 Gemini, Widget, GDC announcement, 새로운 Play의 안정성과 보안 내용, Android XR, Media, Camera 등의 소식을 전합니다.
이 게시물의 대부분의 내용은 영상이나 팟캐스트 형식으로도 제공되므로, 읽기보다는 시청하거나 청취하셔도 됩니다. (또는 기억을 돕기 위해 세 가지를 모두 시도해 보세요! 퀴즈는 없으니까요.)

Android 16은 Beta 3를 통해 플랫폼 안정성(Platform Stability) 단계에 도달했습니다. API surface가 고정되었고, 앱에 영향을 미치는 동작도 최종 확정되었으며, 이제 Android 16을 타겟팅한 앱을 Play 스토어에 출시할 수 있습니다.
이번 Android 16 베타에서는 Pixel 9 기기에서 호환 가능한 LE 오디오 보청기와 함께 Auracast 브로드캐스트 오디오를 지원합니다. 또한, 기존의 고대비 텍스트(high contrast text)를 대체하는 윤곽선 텍스트(outline text) 기능이 도입되어, 텍스트 주변에 더 큰 대비 영역을 그려 저시력 사용자들의 가독성을 크게 향상시킵니다. 아울러, 로컬 네트워크 보호(Local Network Protection) 기능을 테스트할 수 있는 기능도 추가되어, 사용자가 로컬 네트워크 내의 기기에 접근할 수 있는 앱을 더욱 세밀하게 제어할 수 있습니다.
JobScheduler, 브로드캐스트, ART, Intent, 접근성, 블루투스 등 다양한 항목에 변경이 있으므로, 곧 정식 출시가 예정된 만큼 지금 바로 앱 호환성 테스트를 진행하시기 바랍니다.

Android Studio는 이제 기업을 위해 Gemini Code Assist를 통해 Android Studio용 Gemini를 제공합니다. 이는 조직의 개인정보 보호, 보안, 관리 요구사항을 충족하기 위한 것입니다.
Gemini Code Assist를 사용하면, 데이터 거버넌스 정책에 따라 코드가 안전하게 보호되며, 데이터와 지적 재산(IP)에 대한 통제권과 소유권을 유지할 수 있습니다. 또한, 생성형 AI가 만들어낸 코드에 대한 저작권 침해 청구로부터 보호하는 AI 생성 코드에 대한 IP 면책 혜택도 받을 수 있습니다.
Code Assist 엔터프라이즈 라이선스를 이용하면 GitHub, GitLab, BitBucket 저장소와 연결하여, 조직의 코드베이스에 맞춤화된 지원을 받을 수 있습니다. 또한, Android Studio용 Gemini는 Android 개발자를 위한 맞춤형 지원 기능도 제공하는데, 빌드 및 싱크 오류 지원, Gemini 기반의 App Quality Insights, Logcat 크래시 지원 등이 포함되어 있습니다.

Android Studio용 Gemini가 이제 멀티모달 입력을 지원하여, 프롬프트에 이미지를 직접 첨부할 수 있게 되었습니다. 이를 사용해보려면 최신 Android Studio 카나리 버전을 다운로드하세요.
Gemini 채팅 창에 있는 이미지 첨부 아이콘을 통해 JPEG 또는 PNG 파일을 프롬프트에 첨부할 수 있습니다. 이를 통해 와이어프레임이나 목업(mockup)을 Jetpack Compose 코드로 변환하거나, 아키텍처 또는 데이터 흐름 다이어그램에 대한 인사이트를 얻을 수 있으며, 스크린샷을 업로드하여 UI 버그를 분석하고 해결 방법을 Gemini에게 요청할 수도 있습니다.

삼성의 One UI 7은 더 향상된 개인화 기능과 최적화된, 더욱 눈에 띄는 위젯 경험을 제공합니다. 위젯은 사용자의 기기 화면에서 브랜드와 핵심 기능을 전면에 배치할 수 있어, 사용자 참여도 향상 및 다양한 이점을 기대할 수 있습니다.
또한 Google Play에서는 이제 위젯 검색 필터가 추가되어, 위젯을 지원하는 앱을 더 쉽게 찾을 수 있습니다. 아울러, 앱 상세 페이지에 새로운 위젯 배지가 표시되고, 큐레이션된 위젯 에디토리얼 페이지도 제공되어, 위젯을 지원하는 앱이 더 넓은 사용자층에게 노출되고 인지도를 높일 수 있도록 지원합니다.

우리는 최근 Widget Spotlight Week를 마무리했습니다. 이번 주간에서는 새로운 위젯 품질 등급(Quality Tiers), 표준 레이아웃(Canonical Layouts), 새로운 Figma 위젯 디자인 키트, Jetpack Glance, 그리고 Coding Widgets 레이아웃 영상과 코드랩을 다루며, 여러분이 멋진 위젯을 디자인하고 개발할 수 있도록 지원했습니다.

Android와 Google Play는 지난달 샌프란시스코에서 열린 GDC(Game Developers Conference)에서 다양한 발표를 진행했습니다.
Android는 이제 Vulkan을 공식 그래픽 API로 채택했으며, 이를 통해 레이 트레이싱(ray tracing)과 멀티스레딩(multithreading) 같은 고급 기능을 활용할 수 있게 되었습니다. 기존에 OpenGL을 사용하는 게임의 경우, Android는 ANGLE을 사용하여 OpenGL 명령어를 Vulkan으로 변환해 실행합니다.
또한, Android Dynamic Performance Framework (ADPF)가 업데이트되어, 더 오랜 시간 동안 부드러운 게임플레이를 제공할 수 있게 되었습니다. ADPF는 다양한 기기에서 작동하도록 설계되었으며, 주요 게임 엔진들과의 통합 지원도 제공합니다.
Play Console에서는 이제 Android Vitals에 Low Memory Killer(LMK) 데이터를 포함하여, 메모리 부족으로 인한 게임 크래시 원인에 대한 인사이트를 제공합니다.
마지막으로, PC 게임을 모바일로 쉽게 이식할 수 있도록 지원하는 파일럿 프로그램도 소개되었습니다. DREDGE와 TABS Mobile 같은 게임들이 이 프로그램을 통해 모바일 유저층을 성공적으로 확장하고 있습니다.
Google Play는 PC 게임을 위한 플랫폼을 개선하여, 더 나은 사용자 경험과 개발자가 PC 플레이어와 소통할 수 있는 새로운 방법들을 제공하고 있습니다.
이제 Play Games PC SDK를 사용해 Google Play Games에서 네이티브 PC 게임을 배포할 수 있으며, 인앱 결제 통합 및 보안 보호 기능 같은 툴을 지원합니다. Play Console을 통해 모바일과 PC 게임 빌드를 모두 관리할 수 있습니다. 또한, PC 게임을 Google Play Games on PC로 출시하면 최대 추가 15% 수익을 얻을 수 있는 Earnback 프로그램도 새롭게 마련되었습니다.
모바일 게임은 기본적으로 PC에서도 제공되며, 필요 시 옵트아웃할 수 있습니다. 각 게임에는 PC 호환성을 표시하는 플레이어빌리티 배지가 부여됩니다. 올해부터는 OEM 파트너사들과 협력하여 새로운 디바이스의 시작 메뉴(Start Menu)에서도 Google Play Games에 쉽게 접근할 수 있도록 지원할 예정입니다.
커스텀 컨트롤 설정 같은 새로운 기능을 통해 플레이어가 자신에게 맞는 플레이 환경을 구축할 수 있으며, 멀티 계정 및 멀티 인스턴스 지원도 추가될 예정입니다.
또한, PC에서 Play Points를 더 쉽게 적립하고 관리할 수 있도록 개선되며, 최대 10배 포인트 부스터 혜택도 제공됩니다. 아울러 Google은 Google Play Games on PC 내에서 에뮬레이트된 모바일 게임과 네이티브 PC 게임 모두를 대상으로 한 유저 획득(UA) 캠페인을 지원하는 솔루션도 준비 중입니다.

우리는 Android XR 개발자 미리보기를 발표했습니다. 이는 친숙한 도구와 개방형 표준(Open Standards)을 사용하여 XR 개발을 위한 통합 플랫폼입니다. Android Studio, Jetpack 라이브러리, 그리고 Compose for XR(간소화된 UI 개발을 위한)을 활용할 수 있습니다. Unity 개발자들은 Unity의 편집기 및 XR 패키지에 대한 지원을 받습니다. 앱은 Play Store를 통해 배포됩니다. 주요 기능으로는 눈, 음성, 손을 통한 멀티모달 입력을 지원하며, Android 접근성 기능과 기존의 대형 화면 호환 앱 자동 적응 기능이 포함됩니다. 또한, Jetpack XR SDK와 ARCore가 제공되며, Unity는 OpenXR을 기반으로 지원됩니다.

Google은 Google Play와 Android에서 안전과 보안을 강화하기 위해, 개발자가 보안 앱을 더 쉽게 만들 수 있도록 도와주는 도구들을 제공하고 있습니다.
Google이 앱 생태계를 개선하는 몇 가지 방법은 다음과 같습니다:
Play Console의 사전 검토 체크는 이제 개인정보 처리방침 링크와 로그인 자격 증명 요구 사항을 확인하는 기능을 포함합니다. 올해는 더 많은 사전 검토 체크가 추가될 예정입니다.
Android Studio에서 코드 작성 중에 관련 정책에 대한 알림을 제공합니다. 올해에는 더 넓은 범위의 정책을 다루는 알림으로 확대될 예정입니다.
Google은 정책 경험을 개선하여 더 명확한 업데이트와 실질적인 변경을 위한 시간을 제공할 예정입니다.
Google Play Developer Help Community는 인도네시아어, 일본어, 한국어, 포르투갈어 등 더 많은 언어를 지원하도록 확장됩니다.
Play Integrity API 기능을 사용하는 앱들은 다른 앱들에 비해 무단 사용이 평균 80% 감소한 것으로 나타났습니다.
Google은 Play Integrity API를 강화하여 더 많은 사용자를 보호하고, Android 13(API 레벨 33) 이상을 실행하는 모든 기기에서 API를 지원하는 기술을 개선할 예정입니다.
향후 앱 카테고리에 배지가 추가될 예정입니다.
Credential Manager API는 이제 디지털 ID를 위한 베타 버전으로 제공됩니다.
Google Play Protect의 실시간 위협 탐지는 금융 앱을 가장한 악성 앱을 타겟으로 보호 범위를 확장하고 있습니다.
Google Play 팀은 앱에서 미디어 개인정보 보호를 우선시하는 방법에 대해 다루었습니다. 필수적인 권한만 요청하고, 광범위한 저장소 접근 권한을 요청하는 대신 Android Photo Picker를 사용하는 것을 권장했습니다. 만약 커스텀 피커를 사용하는 경우, 사용자에게 앱이 사진과 비디오에 접근해야 하는 이유를 투명하게 설명할 것을 권장했습니다.
#WeArePlay는 Memory Lane Games가 어떻게 치매를 앓고 있는 사람들에게 도움을 주고, 여러 언어로 깊이 있는 개인화된 게임을 제공하는지에 대해 이야기했습니다. 공동 창립자 브루스는 자신의 어머니와 공동 창립자 피터의 어머니에게서 영감을 받았다고 전했습니다. 두 사람의 어머니는 혈관성 치매가 있음에도 불구하고, 오래된 가족 사진을 볼 때마다 얼굴에 미소를 띠었습니다.
창립자들은 불필요한 스트레스 없이 게임 디자인을 추구하며, 생성형 AI를 활용해 개인화된 및 현지화된 게임 콘텐츠를 만들 수 있다고 밝혔습니다. 그들의 목표는 여러 언어로 깊이 있는 개인화된 게임을 제공하는 것입니다.
Nevin은 Jetpack Media 3 Transformer를 사용한 일반적인 미디어 처리 작업에 대해 설명했습니다. 여기에는 다음과 같은 일반적인 편집 작업이 포함됩니다:
트랜스코딩(Transcoding): 입력 파일을 지정된 출력 형식으로 재인코딩합니다.
자르기(Trimming): 시작점과 끝점을 설정하여 입력 비디오를 잘라냅니다.
음소거(Muting): 출력 비디오 파일에서 오디오를 음소거합니다.
크기 조정(Resizing): 입력 비디오를 지정된 높이와 너비로 축소(또는 확대)하여 크기를 조정합니다.
Transformer는 가능한 경우 기본적인 비디오 편집을 위해 트랜스뮤팅(Transmuxing)(비디오 스트림을 재인코딩 없이 다시 패키징)을 우선시합니다. 만약 불가능할 경우, Transformer는 트랜스코딩(Transcoding)으로 대체하여 비디오 샘플을 디코딩한 후 원시 데이터로 변환하고, 이를 새로운 컨테이너에 재인코딩하여 저장합니다.
Jolanda는 CameraX와 Compose를 사용하여 접이식 디바이스가 테이블탑 모드로 전환될 때 부드러운 전환을 구현하는 방법을 보여주었습니다. 주요 내용은 다음과 같습니다:
적응형 API 활용: 최신 애니메이션 및 적응형 API(예: Compose 1.8 및 material3-adaptive)를 활용하기 위해 의존성을 업데이트합니다.
눈금자 사용: Compose 1.7.0의 눈금자(rulers)(currentWindowAdaptiveInfo()를 통해 접근 가능)를 사용하여 레이아웃 조정을 위한 힌지 위치를 파악합니다.
경계 애니메이션: LookaheadScope 내에서 Modifier.animateBounds()를 사용하여 모드 전환(평면에서 테이블탑 모드로)의 동안 컴포저블 경계를 애니메이션화합니다.
애니메이션 가시성 사용: AnimatedVisibility를 사용하여 힌지에 상대적인 위치로 동적 컨트롤 패널을 만들 수 있습니다.
Android 16에서는 WebView를 엣지 투 엣지로 구현해야 하므로, Ash는 이를 구현하는 최고의 실천 방법을 다뤘습니다. 주요 내용은 다음과 같습니다:
WebView 콘텐츠를 소유하지 않는 경우: WebView를 감싸고 패딩을 추가합니다.
WebView 콘텐츠를 소유하는 경우: viewport-fit=cover 메타 태그, 안전 영역 인셋(safe area insets)을 위한 CSS 변수, 그리고 패딩을 추가하기 위한 JavaScript를 사용합니다. 또한, IME 인셋을 처리하여 키보드가 겹치지 않도록 합니다.
Amo의 Cyril은 Jetpack Compose를 활용하여 그래픽, 햅틱, 사운드를 통해 터치 기반 피드백을 제공하며 즐거운 사용자 경험을 창출하는 방법을 다뤘습니다. Bump는 커스텀 오디오, 셰이더 기반 애니메이션, 인터랙티브 맵 요소를 포함한 구현을 Android SDK, Jetpack Compose, Kotlin, 그리고 Google Play Services를 사용하여 구축했습니다.
Google Play의 2025년 4월 정책 업데이트는 Android 개발자에게 여러 주요 분야에서 영향을 미칩니다:
뉴스 앱: 새로운 정책에 따라 뉴스 및 잡지 앱은 자기 선언서를 작성하고, Play Store 목록을 업데이트하며, 정기적으로 출처를 명시한 콘텐츠를 업데이트해야 하고, 제휴 마케팅/광고 수익 중심을 피해야 합니다.
금융 서비스 (신용 한도): 신용 한도를 제공하는 앱은 이제 개인 대출 정책에 포함되며, 민감한 사용자 데이터 접근이 금지되고, 더 엄격한 권한 정책을 준수해야 합니다.
사용자 데이터: 새로운 최고의 실천 방법은 데이터 보호 법률(예: GDPR) 준수를 강조하며, 이를 위한 리소스를 제공합니다. 정기적인 준수 체크가 권장됩니다.
사진 및 비디오: 사진과 비디오에 접근하는 앱은 2025년 5월 28일까지 선언서를 제출해야 하며, 이들 자료는 직접적인 기능 목적으로만 접근할 수 있음을 상기시킵니다.
Christopher, Nam, 그리고 Carmen은 Android 팀이 Android 앱 시작 성능을 개선하기 위해 어떻게 작업하고 있는지, 특히 초기 실행과 후속 실행 간의 성능 차이를 줄이는 데 집중한 내용을 다뤘습니다. 주요 내용은 다음과 같습니다:
새로운 두 개의 영상이 SDK Runtime에 대해 다루고 있으며, 이는 앱에서 타사 코드를 다루는 새로운 방법입니다.
SDK Runtime의 구성에서는 Privacy Sandbox 내에서 SDK Runtime이 어떻게 타사 SDK를 자체 샌드박스에 격리시켜 사용자 개인정보 보호와 앱 보안을 강화하는지 설명합니다. 주요 내용은 다음과 같습니다:
SDK Runtime 소개에서는 이 기술이 개발자와 앱 사용자 모두에게 제공하는 기능과 장점을 다룹니다. SDK Runtime은 타사 소프트웨어 개발 키트(SDK) — 광고나 분석과 같은 앱 기능을 제공하는 일반적인 요소들 — 을 별도의 환경으로 격리시킵니다. 이 기술의 장점은 다음과 같습니다:
새로운 SDK Runtime을 사용하여 더 안전하고 개인정보 보호가 강화된 경험을 구축해 보세요.
Google Play의 2024년 최고 앱 시상식에서 Infinite Painter가 그래픽 코어와 입력 모션 예측 Jetpack 라이브러리를 사용하여 지연 시간을 5배 줄였다고 소개되었습니다.
Compose for Android TV는 모바일 앱에서 기존의 비즈니스 로직과 아키텍처를 재사용하여 TV 앱 개발을 가속화할 수 있도록 합니다. Paul의 Compose for TV 영상에서는 이를 어떻게 구현할 수 있는지 설명합니다. 추천되는 접근 방식은 UI 특정 뷰 모델과 분리된 비즈니스 로직을 사용하는 것입니다. 이를 통해 TV 전용 Compose 구성 요소(TV material artifact에서 제공하는)를 사용하여 onFocusChanged 및 bringIntoViewSpec 같은 포커스 관리 기능을 갖춘 전용 TV UI를 만들 수 있습니다. 공유 UI 구성 요소, 도메인 모델, 데이터 레이어로 모듈화된 아키텍처를 구축하면 다양한 디스플레이 형식에서 코드 재사용이 향상됩니다.
AndroidX에 새로운 기능들이 많이 추가되었습니다. 주요 내용은 다음과 같습니다:
Media3 버전 1.6.0이 출시되었으며, 여기에는 버그 수정, 성능 개선 및 새로운 기능이 포함됩니다.
ExoPlayer는 이제 HLS 스트림에서 광고 삽입을 위한 HLS 인터스티셜을 지원합니다.
DefaultRenderersFactory에서 디코더 예비 로딩에 대한 실험적 지원을 활성화할 수 있습니다.
media3-ui-compose 모듈이 새로 제공되어, Compose UI를 사용한 재생 화면을 구축할 수 있습니다.
MediaExtractorCompat는 기존 MediaExtractor의 대체품으로, Media3의 extractors를 사용하여 구현됩니다.
새로운 ExperimentalFrameExtractor 클래스를 사용하여 비디오 프레임을 추출할 수 있습니다.
Dolby Vision 스트림은 이제 이 형식을 지원하는 디바이스에서 트랜스코딩/transmuxing을 지원합니다.
Jetpack WindowManager 1.4가 이제 안정화되어 적응형 앱을 구축하기 위한 새로운 기능들을 소개합니다.
WindowSizeClass API가 업데이트되어 사용자 정의 값을 지원합니다.
Activity stack pinning은 활동 스택을 항상 화면에 표시할 수 있는 방법을 제공합니다.
Pane expansion을 통해 분할 화면 모드에서 두 활동 간의 시각적 구분을 만들 수 있습니다.
Dialog full-screen dim은 대화 상자가 나타나는 컨테이너만 어두워지게 하거나 전체 작업 창을 어두워지게 할 수 있는 옵션을 제공합니다.
향상된 자세 지원을 통해 WindowInfoTracker#supportedPostures API를 사용하여 태블릿 모드를 지원하는지 여부를 확인할 수 있습니다.
Health Connect Jetpack SDK가 이제 베타 상태로 출시되었습니다. 이번 베타 릴리스에는 더 정확하고 유용한 데이터를 제공하기 위한 필수 기록 방법과 디바이스 유형이 포함됩니다.
새로운 권한을 통해 사용자가 동의하면 앱이 백그라운드에서 Health Connect 데이터에 접근할 수 있습니다. PERMISSION_READ_HEALTH_DATA_HISTORY 권한은 기본 30일 범위를 넘어서는 사용자 데이터에 접근할 수 있게 해줍니다.
Health Connect는 이제 운동 경로와 피부 온도와 같은 확장된 데이터 유형을 제공합니다.
Android 앱 개발자는 Lifecycle 2.9.0-alpha08에서 ViewModelScenario가 도입되어 ViewModel의 유닛 테스트를 더 쉽게 할 수 있다는 점을 유의해야 합니다. 이 새로운 도구는 ViewModel의 수명 주기와 상태 복원, SavedStateHandle 기능을 테스트하는 과정을 단순화하며, ViewModel.onCleared()가 제대로 호출되는지 확인합니다. ViewModelScenario는 또한 KMP(Kotlin Multiplatform) 호환이 되어 크로스 플랫폼 개발을 촉진합니다.
androidx.core:core-i18n:1.0.0:
Android 앱에서 국제화(i18n)을 단순화하기 위한 중요한 새로운 라이브러리가 출시되었습니다. 이 라이브러리는 사용자 설정을 존중하는 향상된 날짜/시간 형식화를 제공하며, android.icu.text.MessageFormat의 백포트를 포함하여 새로운 날짜/시간 형식화와 잘 통합됩니다. 이는 다양한 로케일과 사용자 선호도에 맞춰 날짜 및 시간 표시를 지원하려는 경우 매우 중요합니다.
androidx.webkit:webkit:1.14.0-alpha01:
PaymentRequest API가 도입되어 Android 네이티브 결제 앱을 WebView에서 호출할 수 있게 되었습니다. 그러나 개발자는 이를 명시적으로 활성화하고 매니페스트에 queries 태그를 추가해야 합니다. 또한, 향상된 WebView 내비게이션 추적과 WebViewCompat#saveState를 통해 WebView 상태 저장을 관리할 수 있는 실험적 API도 도입되었습니다.
androidx.datastore:datastore-:1.2.0-alpha01:
datastore-guava 모듈이 추가되어 Java와 Guava ListenableFuture 사용자에게 친숙한 API를 GuavaDataStore를 통해 제공합니다. 또한, DirectBoot 모드에서 DataStore 사용을 지원하며, 이는 Device Protected 저장소 내에서 생성되어야 합니다.
androidx.wear:wear-phone-interactions:1.1.0:
Wear OS 5 (API 34+) 앱에서 API 35를 타겟으로 하는 중요한 버그 수정이 포함되었습니다. API 35를 타겟으로 하기 전에 업데이트하여 런타임 예외를 피하십시오.
androidx.dynamicanimation:dynamicanimation:1.1.0:
DynamicAnimation 라이브러리가 이제 안정화되었습니다.
androidx.activity:activity:1.11.0-beta01:
PickVisualMediaRequest에 MediaCapabilities API가 추가되어, 애플리케이션이 미디어 기능을 지정할 수 있게 되었습니다.
Gradle 8.8.1과 Java 17로 업그레이드되었으며, 버그 수정이 포함되었습니다. games-frame-pacing에는 다양한 버그 수정이 포함됩니다.
Tor, Chet, Romain, Theresa, 그리고 Naheed는 Google이 앱 안전을 위해 진행하는 작업을 심층적으로 다루었습니다. 여기에는 SDK 인덱스, 사전 리뷰 검사, 안전 라벨 등이 포함되어, 여러분이 보안 앱을 구축하고 의심스러운 활동으로부터 사용자 보호를 돕는 방법을 설명했습니다. 이는 앱 생태계 강화 블로그 게시물과 연결됩니다.