[Event] I/O Extended Android in Korea 2024
https://social.wanted.co.kr/community/article/109440 에서 발표자료를 보실 수 있습니다!
세션1. What’s new in Android
Kyeongwan Kang : Woowaw Bros. Android Developer GDG Korea Android Organizer
Linkedin : https://www.linkedin.com/in/kyeongwan-lucas-kang/
발표 자료 주요 키워드를 바탕으로 추가적으로 정리 (공식문서 포함)
AI with Android
Android Studio
Adaptive Layout
새롭게 출시된 material3-adaptive 라이브러리는 ListDetailPaneScaffold와 SupportingPaneScaffold 같은 적응형 시나리오를 구현할 수 있는 API가 추가됨.
아직 navigation 라이브러리와 통합되지 않음.
Compose
이제 HTML을 annotatedString으로 변환하기 위한 코드를 작성할 필요가 없음. 인라인링크와 HTML 포맷팅을 지원하는
AnnotatedString.fromHtml()
익스텐션이 추가됨최대 줄 수를 정하면 화면에 들어갈 수 있는 항목을 구성 후 넘치는 항목에 대한 컨텍스트를 제공함
Shared elements(공유 요소)는
Modifier.sharedElements()
와Modifier.sharedBounds()
를 사용해서 전환 효과를 만들 수 있음.애니메이션 컨텐츠 컴포저블을 SharedTransitionLayout으로 감싸고, 전환할 컨텐츠에
Modifier.sharedElements()
나Modifier.sharedBounds()
를 추가하면 된다. 화면 전환을 할 때 사용하려면 Navigation-compose와도 함께 사용할 수 있음.https://developer.android.com/develop/ui/compose/animation/shared-elements?hl=ko
Indication API가 변경됨. 리플 효과를 그리는 구현이 변경되서 Ripple API로 마이그레이션이 필요함. 17% 그리는 속도 향상됨.
Jetpack Compose는 출시될 때 마다 빨라짐. 컴포저블 함수의 성능 최적화를 위해 Strong Skipping mode 도입, 효율적으로 컴포저블 함수를 건너 뛰어 성능 향상에 중점을 둠. 모든 매개변수가 stable하지 건너뛰기 가능. 더 많은 recomposition이 skip되지만 아직은 실험적인 기능.
Lambda memoization이 생김. 람다 호출을 위해 remember로 감쌌다면 Strong Skipping mode가 활성화되면 자동으로 모든 람다가 remember로 감싸줌
코틀린 2.0 출시되고, 컴포즈 컴파일러가 코틀린에 직접 배포됨! 컴포즈 컴파일러가 코틀린 저장소로 옮겨지면서 코틀린과 컴포즈의 통합이 더욱 원활해짐. => 코틀린 버전과 일치하는 컴포즈 컴파일러 버전을 지정할 필요가 없어짐!!!! Compose Compiler Gradle로 쉽게 업데이트 가능함.
Android 15
앱에서 SDK 35 이상을 타겟팅하면 Android 15 이상 기기에서는 더 넓은 화면(Edge to Edge)이 자동으로 사용 설정됨
Material3 컴포넌트를 사용할 땐 자동으로 인셋을 처리하고 그 외의 경우는 수동으로 WindorInset을 적용해야함
Glance
Canonical layouts로 표준화된 디자인 가이드 제공
androidx.glance 종속 항목 추가하고 작업하기
Credential Manager
Passkey
Digital credentials
Wear OS support
Health
기존 Google Fit API(2025년 6월 30일까지만 사용 가능함)에서 Android Health API로 마이그레이션 하는 것이 좋음
Google Fit API에서 recording API도 모바일에 도입하여 걸음 수 추적 가능, 조만간 이동거리 및 열량 소모도 측정하게 할 예정
A11y
Compose UI Check mode
Compose UI 접근성 문제를 자동으로 테스트함
다양한 상황을 모두 테스트, 접근성 문제를 감시함