Activity
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2023년 2월 8일 | 1.6.1 | - | 1.7.0-beta01 | 1.8.0-alpha01 |
종속 항목 선언
Activity의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { def activity_version = "1.6.1" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.6.1" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.8
버전 1.8.0-alpha01
2023년 2월 8일
androidx.activity:activity:1.8.0-alpha01
, androidx.activity:activity-compose:1.8.0-alpha01
, androidx.activity:activity-ktx:1.8.0-alpha01
이 출시되었습니다. 내부 브랜치에서 빌드되었습니다.
새로운 기능
- 이제
OnBackPressedCallback
클래스에는 뒤로 동작이 커밋되는 경우에 관한 이전handleOnBackPressed()
콜백 외에도, 새로운 뒤로 탐색 예측 프로세스 콜백이 포함됩니다. 이 콜백은 뒤로 동작 시작, 동작 전체의 진행 상황, 취소되는 뒤로 동작에 관한 처리를 담당합니다.
버전 1.7
버전 1.7.0-beta01
2023년 2월 8일
androidx.activity:activity:1.7.0-beta01
, androidx.activity:activity-compose:1.7.0-beta01
, androidx.activity:activity-ktx:1.7.0-beta01
이 출시되었습니다. 버전 1.7.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
IntentSenderRequest.Builder.setFlags()
를 사용하면 단일 플래그뿐 아니라 여러 플래그를Intent
에서 설정할 수 있습니다. (Iac04c)
버그 수정
- 이제 프레임워크 사진 선택 도구를 사용할 수 없는 경우
PickVisualMedia
를 대체하면 기기의 시스템 이미지에 설치된 앱으로만 처리가 올바르게 제한됩니다. (If8ae6)
Kotlin 변환
- 이제
ActivityResultRegistryOwner
가 Kotlin으로 작성됩니다. 이는 Kotlin으로 작성된 클래스에는 소스와 호환되지 않는 변경사항입니다. 이제 이전activityResultRegistry
함수를 구현하는 대신getActivityResultRegistry()
속성을 재정의해야 합니다. (I0b00e) - 이제
OnBackPressedDispatcherOwner
가 Kotlin으로 작성됩니다. 이는 Kotlin으로 작성된 클래스에는 소스와 호환되지 않는 변경사항입니다. 이제 이전onBackPressedDispatcher
함수를 구현하는 대신getOnBackPressedDispatcher
속성을 재정의해야 합니다. (Ia277d) - 이제
ContextAware
,ContextAwareHelper
,OnContextAvailableListener
,IntentSenderRequest
,OnBackPressedDispatcher
는 Kotlin으로 작성됩니다. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
버전 1.7.0-alpha04
2023년 1월 25일
androidx.activity:activity:1.7.0-alpha04
, androidx.activity:activity-compose:1.7.0-alpha04
, androidx.activity:activity-ktx:1.7.0-alpha04
가 출시되었습니다. 버전 1.7.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
PickVisualMedia
및PickMultipleVisualMedia
활동 결과 계약에서는 이제 Android 시스템 제공 사진 선택 도구(MediaStore.ACTION_PICK_IMAGES
)를 사용할 수 없는 경우에는 Google Play 서비스 제공 사진 선택 도구를 사용합니다. Android 시스템 제공 사진 선택 도구만 감지하는isPhotoPickerAvailable()
API는 지원 중단되었습니다. 둘 중 사용할 수 있는 사진 선택 도구가 있으면 반환하는 새isPhotoPickerAvailable(Context)
API를 사용하는 것이 좋습니다. (I55be6)
버전 1.7.0-alpha03
2023년 1월 11일
androidx.activity:activity:1.7.0-alpha03
, androidx.activity:activity-compose:1.7.0-alpha03
, androidx.activity:activity-ktx:1.7.0-alpha03
이 출시되었습니다. 버전 1.7.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
ComponentDialog
는SavedStateRegistryOwner
를 구현하고 자체SavedStateRegistry
에 액세스할 수 있으며 ViewTree에SavedStateRegistryOwner
를 설정합니다. 이제 ViewTree API 요구사항을 통해 창에 연결된LifecycleOwner
및SavedStateRegistryOwner
를 모두 충족하므로ComponentDialog
내에서 Jetpack Compose를 사용할 수 있습니다. (Idca17, I73468 b/261162296)
API 변경사항
reportFullyDrawn
을 호출할 준비가 된 활동을 즉시 표시하는ReportDrawn
컴포저블을 추가했습니다. (Ic5b14, b/259687964)
Kotlin 변환
ActvitiyResultCallback
및OnBackPressedCallback
클래스는 모두 소스 및 바이너리 호환성을 유지하면서 Kotlin으로 변환되었습니다. (Ifc5e5, Ide1b0, b/257291701)
버전 1.7.0-alpha02
2022년 10월 24일
androidx.activity:activity:1.7.0-alpha02
, androidx.activity:activity-compose:1.7.0-alpha02
, androidx.activity:activity-ktx:1.7.0-alpha02
가 출시되었습니다. 버전 1.7.0-alpha02에 포함된 커밋을 확인하세요.
버그 수정
- Activity
1.6.1
에서:maxItems
의 기본값을 사용할 때 Android R 기기에서PickMultipleVisualMedia
활동 결과 계약이 실행되지 않는 문제가 해결되었습니다. (Ie2776, b/249182130)
버전 1.7.0-alpha01
2022년 10월 5일
androidx.activity:activity:1.7.0-alpha01
, androidx.activity:activity-compose:1.7.0-alpha01
및 androidx.activity:activity-ktx:1.7.0-alpha01
이 출시되었습니다. 버전 1.7.0-alpha01에 포함된 커밋을 확인하세요.
FullyDrawnReporter API
이제 ComponentActivity
는 상호작용에 사용할 준비가 되면 여러 구성요소를 보고할 수 있는 FullyDrawnReporter
인스턴스를 제공합니다. ComponentActivity
는 모든 구성요소가 완료되기를 기다린 후 자동으로 reportFullyDrawn()
을 호출합니다. 이러한 API는 타이밍 요구사항을 처리하며, onDraw
호출의 일부로 이 API를 호출할 필요가 없습니다.
이러한 API는 다음을 사용 설정하는 것이 좋습니다.
- 시작 시 Android 런타임 신호를 보내 멀티 프레임 시작 시퀀스 중에 실행되는 모든 코드를 포함하고 백그라운드 컴파일 우선순위를 지정해야 합니다.
- 시작 측정항목을 위해 애플리케이션이 완전히 그려졌다고 판단될 때 Macrobenchmark 및 Play Vitals 신호를 보내 성능을 추적할 수 있습니다.
개별 컴포저블의 FullyDrawnReporter
를 더 편리하게 사용할 수 있도록 Activity Compose API 두 개를 추가했습니다.
ReportDrawnWhen
은 조건자(예:list.count > 0
)를 사용하여 컴포저블의 상호작용 준비 시기를 나타냅니다.ReportDrawnAfter
는 완료 시 상호작용할 준비가 되었음을 나타내는 정지 메서드를 사용합니다.
버전 1.6.1
버전 1.6.1
2022년 10월 24일
androidx.activity:activity:1.6.1
, androidx.activity:activity-compose:1.6.1
, androidx.activity:activity-ktx:1.6.1
이 출시되었습니다. 버전 1.6.1에 포함된 커밋을 확인하세요.
버그 수정
maxItems
의 기본값을 사용할 때 Android R 기기에서PickMultipleVisualMedia
활동 결과 계약이 실행되지 않는 문제가 해결되었습니다. (Ie2776, b/249182130)
버전 1.6.0
버전 1.6.0
2022년 9월 21일
androidx.activity:activity:1.6.0
, androidx.activity:activity-compose:1.6.0
및 androidx.activity:activity-ktx:1.6.0
이 출시되었습니다. 버전 1.6.0에 포함된 커밋을 확인하세요.
1.5.0 이후 중요 변경사항
ActivityResultContracts.PickVisualMedia
및ActivityResultContracts.PickMultipleVisualMedia
를 추가하여 이전 버전과 호환되는 계약을 제공함으로써 사진 선택 도구가 제공되면MediaStore.ACTION_PICK_IMAGES
를 사용하고, 제공되지 않으면Intent.ACTION_OPEN_DOCUMENT
를 사용합니다.- Android 13의
OnBackInvokedCallback
을ComponentActivity
및ComponentDialog
에서 제공하는OnBackPressedDispatchers
에 통합했습니다. 이에 따라 뒤로 탐색 예측 동작을 사용 설정할 경우OnBackPressedDispatcher
에서 빌드된 모든 API가 정상적으로 작동합니다.
버전 1.6.0-rc02
2022년 9월 7일
androidx.activity:activity:1.6.0-rc02
, androidx.activity:activity-compose:1.6.0-rc02
, androidx.activity:activity-ktx:1.6.0-rc02
가 출시되었습니다. 버전 1.6.0-rc02에 포함된 커밋을 확인하세요.
버그 수정
- 이제
OnBackPressedDispatcher
는PRIORITY_OVERLAY
대신PRIORITY_DEFAULT
로OnBackInvokedCallback
을 등록합니다. (I3901f) - 이제
ComponentActivity
를 확장하는 클래스는 항상onMultiWindowModeChanged()
콜백 두 개가 모두 전달됩니다. (Ic4d85) launch
호출에서Exception
이 발생했고 콜백이LifecycleOwner
없이 등록된 경우ActivityResultRegistry
는 더 이상ActivityResultCallback
에 결과를 반환하지 않습니다. (Ia7ff7, b/238350794)ComponentActivity
는 이제 활동에서 super 함수를 호출할 필요 없이 메뉴 호출을 올바르게 전달합니다. (Ie33c5, b/238057118)
종속 항목 업데이트
- 이제
Activity
라이브러리는 Lifecycle2.5.1
에 종속됩니다. (If6697)
버전 1.6.0-rc01
2022년 8월 24일
androidx.activity:activity:1.6.0-rc01
, androidx.activity:activity-compose:1.6.0-rc01
, androidx.activity:activity-ktx:1.6.0-rc01
이 출시되었습니다. 버전 1.6.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
OnBackPressedDispatcher
를 초기화해도 33 이전의 SDK 버전을 사용할 때 더 이상ClassVerificationError
가 발생하지 않습니다. (Ic32e1)- 이제
ComponentActivity
의onPictureInPictureModeChanged()
콜백을 재정의하는 클래스는 항상 콜백을 전달합니다. (Ib7fdb)
버전 1.6.0-beta01
2022년 8월 10일
androidx.activity:activity:1.6.0-beta01
, androidx.activity:activity-compose:1.6.0-beta01
및 androidx.activity:activity-ktx:1.6.0-beta01
이 출시되었습니다. 버전 1.6.0-beta01에 포함된 커밋을 확인하세요.
API 변경사항
null
을 전달하면 항상 비정상 종료가 발생했으므로ComponentActivity
에서 지원 중단된startActivityForResult
및startIntentSenderForResult
메서드를@NonNull
로 표시했습니다. (Id2a25, b/231476082)
버그 수정
- Activity
1.5.1
에서:launch
호출에서Exception
이 발생했고 콜백이LifecycleOwner
없이 등록된 경우ActivityResultRegistry
는 더 이상ActivityResultCallback
에 결과를 반환하지 않습니다. (Ia7ff7, b/238350794) - Activity
1.5.1
에서: 이제ComponentActivity
이 super 함수를 호출하지 않고도 메뉴 호출을onPrepareOptionMenu()
,onCreateOptionsMenu()
,onOptionsItemSelected()
재정의로 올바르게 전달합니다. (Ie33c5, b/238057118)
종속 항목 업데이트
- Activity
1.5.1
에서: 이제Activity
라이브러리가Lifecycle
버전2.5.1
에 종속됩니다. (If6697)
버전 1.6.0-alpha05
2022년 6월 15일
androidx.activity:activity:1.6.0-alpha05
, androidx.activity:activity-compose:1.6.0-alpha05
, androidx.activity:activity-ktx:1.6.0-alpha05
가 출시되었습니다. 버전 1.6.0-alpha05는 출시 전 비공개 브랜치에서 개발되었으며 공개 커밋이 없습니다.
API 변경사항
- 이제 Tiramisu 베타 3 SDK에 맞는
minCompileSdk
는 33입니다.
버그 수정
- Android 10 이하를 실행하는 기기에서 이제
ACTION_OPEN_DOCUMENT
를 사용할 수 있도록PickVisualMedia
ActivityResultContract
에 SDK 확장 프로그램 검사를 실행할 때 기존의 기기에서 발생하던 비정상 종료 문제를 수정했습니다.
버전 1.6.0-alpha04
2022년 5월 18일
androidx.activity:activity:1.6.0-alpha04
및 androidx.activity:activity-ktx:1.6.0-alpha04
가 출시되었습니다.
버그 수정
- 빌더 또는 최상위 Kotlin 함수를 통해 요청을 만들려고 하면 스택 오버플로가 발생하는
PickVisualMediaRequest
의 오류를 수정했습니다. - Android 13 개발자 베타 2의
OnBackInvokedCallback
을ComponentDialog
에서 제공하는OnBackPressedDispatcher
에 통합했습니다. 이에 따라 뒤로 탐색 예측 동작을 사용 설정할 경우OnBackPressedDispatcher
에서 빌드된 모든 API가 정상적으로 작동합니다.
버전 1.6.0-alpha03
2022년 4월 27일
androidx.activity:activity:1.6.0-alpha03
, androidx.activity:activity-compose:1.6.0-alpha03
, androidx.activity:activity-ktx:1.6.0-alpha03
이 출시되었습니다.
- 참고: 이 버전은 Android 13 개발자 베타 1 SDK에서만 컴파일됩니다.
새로운 기능
ActivityResultContracts.PickVisualMedia
및ActivityResultContracts.PickMultipleVisualMedia
를 추가하여 이전 버전과 호환되는 계약을 제공함으로써 사진 선택 도구가 제공되면MediaStore.ACTION_PICK_IMAGES
를 사용하고, 제공되지 않으면Intent.ACTION_OPEN_DOCUMENT
를 사용합니다.- Android 13 개발자 베타 1의
OnBackInvokedCallback
을ComponentActivity
에서 제공하는OnBackPressedDispatcher
에 통합했습니다. 이에 따라 뒤로 탐색 예측 동작을 사용 설정할 경우OnBackPressedDispatcher
에서 빌드된 모든 API가 정상적으로 작동합니다.
버전 1.6.0-alpha01
2022년 3월 23일
androidx.activity:activity:1.6.0-alpha01
, androidx.activity:activity-compose:1.6.0-alpha01
및 androidx.activity:activity-ktx:1.6.0-alpha01
이 출시되었습니다.
- 참고: 이 버전은 Android 13 개발자 프리뷰 2 SDK에서만 컴파일됩니다.
새로운 기능
- Android 13 개발자 프리뷰 2의 변경사항이
ComponentActivity
에 통합되었습니다.
버전 1.5.1
버전 1.5.1
2022년 7월 27일
androidx.activity:activity:1.5.1
, androidx.activity:activity-compose:1.5.1
, androidx.activity:activity-ktx:1.5.1
이 출시되었습니다. 버전 1.5.1에 포함된 커밋을 확인하세요.
버그 수정
launch()
호출에서Exception
이 발생했고 콜백이LifecycleOwner
없이 등록된 경우ActivityResultRegistry
는 더 이상ActivityResultCallback
에 결과를 반환하지 않습니다. (Ia7ff7, b/238350794)이제
ComponentActivity
가 super 함수를 호출하지 않고도 메뉴 호출을onPrepareOptionMenu()
,onCreateOptionsMenu()
,onOptionsItemSelected()
재정의로 올바르게 전달합니다. (Ie33c5, b/238057118)
종속 항목 업데이트
- 이제
Activity
라이브러리가 Lifecycle2.5.1
에 종속됩니다. (If6697)
버전 1.5.0
버전 1.5.0
2022년 6월 29일
androidx.activity:activity:1.5.0
, androidx.activity:activity-compose:1.5.0
, androidx.activity:activity-ktx:1.5.0
이 출시되었습니다. 버전 1.5.0에 포함된 커밋을 확인하세요.
1.4.0 이후 중요 변경사항
- ComponentDialog:
ComponentDialog
는 시스템 뒤로 버튼을 누르고 대화상자가 표시될 때 호출되는OnBackPressedDispatcher
가 포함된Dialog
의 서브클래스입니다. 무엇보다도 이 서브클래스는ViewTreeOnBackPressedDispatcherOwner
도 설정하기 때문에 뷰에서ComponentActivity
와ComponentDialog
중 어디에 있어도 상관없이 올바른 디스패처를 검색할 수 있는 일반적인 방법이 제공됩니다. - 콜백 인터페이스: 이제
ComponentActivity
가Activity
콜백 대신 사용할 수 있는 모듈식 콜백 인터페이스 집합을 구현합니다. 이러한 인터페이스에는OnNewIntentProvider
,OnConfigurationChangedProvider
,OnTrimMemoryProvider
,OnPictureInPictureModeChangedProvider
,OnMultiWindowModeChangedProvider
가 포함됩니다. - CreationExtras 통합: 이제
ComponentActivity
에서 Lifecycle2.5.0
의CreationExtras
를 통해 스테이트리스(Stateless)ViewModelProvider.Factory
를 제공할 수 있습니다.
기타 변경사항
ActivityResultContracts.CreateDocument
의 no 매개변수 생성자가 지원 중단되고 새 생성자로 대체되었습니다. 새 생성자는Intent.ACTION_CREATE_DOCUMENT
에 필요한 구체적인 MIME 유형(예: 'image/png')을 사용합니다.
버전 1.5.0-rc01
2022년 5월 11일
androidx.activity:activity:1.5.0-rc01
, androidx.activity:activity-compose:1.5.0-rc01
, androidx.activity:activity-ktx:1.5.0-rc01
이 1.5.0-beta01에서 변경사항 없이 출시되었습니다. 버전 1.5.0-rc01에 포함된 커밋을 확인하세요.
버전 1.5.0-beta01
2022년 4월 20일
androidx.activity:activity:1.5.0-beta01
, androidx.activity:activity-compose:1.5.0-beta01
, androidx.activity:activity-ktx:1.5.0-beta01
이 출시되었습니다. 버전 1.5.0-beta01에 포함된 커밋을 확인하세요.
종속 항목 업데이트
- 이제 Activity가 Lifecycle
2.4.0-beta01
에 종속됩니다.
버전 1.5.0-alpha05
2022년 4월 6일
androidx.activity:activity:1.5.0-alpha05
, androidx.activity:activity-compose:1.5.0-alpha05
, androidx.activity:activity-ktx:1.5.0-alpha05
가 출시되었습니다. 버전 1.5.0-alpha05에 포함된 커밋을 확인하세요.
버그 수정
- 이제
ComponentActivity
의onPanelClosed()
가 superonPanelClosed()
도 호출하며, 이를 통해onContextMenuClosed
메서드가 호출되지 않는 문제를 수정했습니다. (Ib6f77)
버전 1.5.0-alpha04
2022년 3월 23일
androidx.activity:activity:1.5.0-alpha04
, androidx.activity:activity-compose:1.5.0-alpha04
, androidx.activity:activity-ktx:1.5.0-alpha04
가 출시되었습니다. 버전 1.5.0-alpha04에 포함된 커밋을 확인하세요.
버그 수정
- 이제
SavedStateViewFactory
가SavedStateRegistryOwner
로 초기화된 경우에도CreationExtras
사용을 지원합니다. 추가 인수가 제공되면 초기화된 인수는 무시됩니다. (I6c43b, b/224844583)
버전 1.5.0-alpha03
2022년 2월 23일
androidx.activity:activity:1.5.0-alpha03
, androidx.activity:activity-compose:1.5.0-alpha03
및 androidx.activity:activity-ktx:1.5.0-alpha03
이 출시되었습니다. 버전 1.5.0-alpha03에 포함된 커밋을 확인하세요.
API 변경사항
- 이제 활동
by viewModels()
함수에CreationExtras
를 전달할 수 있습니다. (I6a3e6, b/217600303)
버전 1.5.0-alpha02
2022년 2월 9일
androidx.activity:activity:1.5.0-alpha02
, androidx.activity:activity-compose:1.5.0-alpha02
, androidx.activity:activity-ktx:1.5.0-alpha02
가 출시되었습니다. 버전 1.5.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
ComponentActivity
는 이제 모든 구성요소가 PIP 모드 변경 이벤트를 수신할 수 있도록OnPictureInPictureModeChangedProvider
인터페이스를 구현합니다. (I9f567)ComponentActivity
는 이제 모든 구성요소가 멀티 윈도우 모드 변경 이벤트를 수신할 수 있도록OnMultiWindowModeChangedProvider
인터페이스를 구현합니다. (I62d91)
버전 1.5.0-alpha01
2022년 1월 26일
androidx.activity:activity:1.5.0-alpha01
, androidx.activity:activity-compose:1.5.0-alpha01
, androidx.activity:activity-ktx:1.5.0-alpha01
이 출시되었습니다. 버전 1.5.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
ComponentActivity
가 이제 Lifecycle2.5.0-alpha01
의 일부로 도입된 ViewModel CreationExtras와 통합됩니다. (Ie7e00, b/207012584)ComponentDialog
를 추가했습니다. 이는 대화상자가 표시될 때 시스템 뒤로 버튼을 누르면 호출되는OnBackPressedDispatcher
를 포함하는Dialog
의 서브클래스입니다. 무엇보다도 이 서브클래스는ViewTreeOnBackPressedDispatcherOwner
도 설정하기 때문에 뷰에서ComponentActivity
와ComponentDialog
중 어디에 있어도 상관없이 올바른 디스패처를 검색할 수 있는 일반적인 방법이 제공됩니다. (I8a1bc)ComponentActivity
가 이제 모든 구성요소가 이러한 이벤트를 수신할 수 있도록 새로운OnNewIntentProvider
인터페이스를 구현합니다. (If1f8b)ComponentActivity
가 이제 모든 구성요소가 이러한 이벤트를 수신할 수 있도록 새로운OnConfigurationChangedProvider
인터페이스를 구현합니다. (If623b)ComponentActivity
가 이제 모든 구성요소가 이러한 이벤트를 수신할 수 있도록 새로운OnTrimMemoryProvider
인터페이스를 구현합니다. (Ia9295)
API 변경사항
ActivityResultContracts.CreateDocument
의 no 매개변수 생성자가 지원 중단되고 새 생성자로 대체되었습니다. 새 생성자는Intent.ACTION_CREATE_DOCUMENT
에서 필요한 구체적인 MIME 유형(예:"image/png"
)을 사용합니다. (I2bec6)- 이제 View와 연결된
OnBackPressedDispatcherOwner
를Context
변환에 의존하지 않고ViewTreeOnBackPressedDispatcherOwner
를 통해 검색할 수 있습니다. (I74685)
버그 수정
registerForActivityResult()
콜백에서 또는ComponentActivity
의init
일부로 추가된LifecycleObserver
콜백에서 맨 처음ViewModel
에 액세스할 때 발생하는 비정상 종료 문제를 수정했습니다. (Ife83f)
버전 1.4.0
버전 1.4.0
2021년 10월 27일
androidx.activity:activity:1.4.0
, androidx.activity:activity-compose:1.4.0
및 androidx.activity:activity-ktx:1.4.0
이 출시되었습니다. 버전 1.4.0에 포함된 커밋을 확인하세요.
1.3.0 이후 중요 변경사항
- 이제 AndroidX
ComponentActivity
가MenuHost
인터페이스를 구현합니다. 이를 통해 모든 구성요소에서MenuProvider
인스턴스를 활동에 추가하여ActionBar
에 메뉴 항목을 추가할 수 있습니다. 각MenuProvider
를Lifecycle
과 함께 선택적으로 추가할 수 있습니다. 그러면Lifecycle
상태에 따라 관련 메뉴 항목의 공개 상태가 자동으로 제어되고Lifecycle
이 소멸되었을 때MenuProvider
삭제가 처리됩니다. - Kotlin에서
ActivityResultContract
클래스를 다시 작성하여 Kotlin으로 맞춤 계약을 작성하는 개발자가 입력 및 출력 클래스의 null 허용 여부를 올바르게 정의할 수 있도록 했습니다. ActivityResultContracts
클래스와 클래스의 계약이 null 허용 여부를 적절하게 보장하도록 Kotlin으로 다시 작성하였습니다.
버전 1.4.0-rc01
2021년 10월 13일
androidx.activity:activity:1.4.0-rc01
, androidx.activity:activity-compose:1.4.0-rc01
, androidx.activity:activity-ktx:1.4.0-rc01
이 출시되었습니다. 버전 1.4.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
launch
호출에서Exception
이 발생하면ActivityResultRegistry
는 더 이상ActivityResultCallback
에 결과를 반환하지 않습니다. (If4f91, b/200845664)
버전 1.4.0-beta01
2021년 9월 29일
androidx.activity:activity:1.4.0-beta01
, androidx.activity:activity-compose:1.4.0-beta01
및 androidx.activity:activity-ktx:1.4.0-beta01
가 출시되었습니다. 버전 1.4.0-beta01에 포함된 커밋을 확인하세요.
API 변경사항
- 자바 프로그래밍 언어에서
코드를 사용할 때
List<? extends Uri>
출력 유형을 사용하게 했던ActivityResultContracts.OpenMultipleDocuments
및ActivityResultContracts.GetMultipleContents
의 유형이 수정되었습니다. (If71de) ActivityResultContracts.StartActivityForResult
,ActivityResultContracts.StartIntentSenderForResult
및ActivityResultContracts.RequestMultiplePermissions
클래스 내 공개 상수는 이제 공개Companion
객체를 통해 Kotlin을 사용할 때 액세스할 수 있습니다. (aosp/1832555)
문서 업데이트
- 이제 Activity Result API에서 처리되는 API의 지원 중단 메시지, 즉
startActivityForResult
,startIntentSenderForResult
,onActivityResult
,requestPermissions
,onRequestPermissionsResult
가 모두 자세하게 확장되었습니다. (cce80f)
버전 1.4.0-alpha02
2021년 9월 15일
androidx.activity:activity:1.4.0-alpha02
, androidx.activity:activity-compose:1.4.0-alpha02
및 androidx.activity:activity-ktx:1.4.0-alpha02
가 출시되었습니다. 버전 1.4.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- 컴포지션에 부작용이 없어야 하므로 이제
activity-compose
아티팩트에 컴포지션의 일부로ActivityResultLauncher
의launch
메서드를 호출하지 못하게 하는LaunchDuringComposition
린트 오류가 포함됩니다. 부작용 처리를 위한 API를 사용합니다. (7c2bbe, b/191347220)
API 변경사항
- Kotlin에서
ActivityResultContract
클래스를 다시 작성하여 Kotlin으로 맞춤 계약을 작성하는 개발자가 입력 및 출력 클래스의 null 허용 여부를 올바르게 정의할 수 있도록 했습니다. (I8a8f5) ActivityResultContracts
클래스와 클래스의 계약이 적절한 null 허용 여부를 보장하기 위해 Kotlin으로 다시 작성하였습니다. (I69802)
버전 1.4.0-alpha01
2021년 9월 1일
androidx.activity:activity:1.4.0-alpha01
, androidx.activity:activity-compose:1.4.0-alpha01
및 androidx.activity:activity-ktx:1.4.0-alpha01
이 출시되었습니다. 버전 1.4.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 AndroidX
ComponentActivity
가MenuHost
인터페이스를 구현합니다. 이를 통해 모든 구성요소에서MenuProvider
인스턴스를 활동에 추가하여ActionBar
에 메뉴 항목을 추가할 수 있습니다. 각MenuProvider
를Lifecycle
과 함께 선택적으로 추가할 수 있습니다. 그러면Lifecycle
상태에 따라 관련 메뉴 항목의 공개 상태가 자동으로 제어되고Lifecycle
이 소멸되었을 때MenuProvider
삭제가 처리됩니다. (I3b608):
/**
* Using the addMenuProvider() API directly in your Activity
**/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Add menu items without overriding methods in the Activity
addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
})
}
}
/**
* Using the addMenuProvider() API in a Fragment
**/
class ExampleFragment : Fragment(R.layout.fragment_example) {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
// The usage of an interface lets you inject your own implementation
val menuHost: MenuHost = requireActivity()
// Add menu items without using the Fragment Menu APIs
// Note how we can tie the MenuProvider to the viewLifecycleOwner
// and an optional Lifecycle.State (here, RESUMED) to indicate when
// the menu should be visible
menuHost.addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
}, viewLifecycleOwner, Lifecycle.State.RESUMED)
}
동작 변경사항
- 등록되지 않았거나 등록 취소된
ActivityResultLauncher
에서launch()
를 호출하려고 하면 이제ActivityResultRegistry
에서IllegalStateException
이 발생합니다. (Ida75d, b/192567522)
외부 기여
버전 1.3.1
버전 1.3.1
2021년 8월 4일
androidx.activity:activity:1.3.1
, androidx.activity:activity-compose:1.3.1
및 androidx.activity:activity-ktx:1.3.1
이 출시되었습니다. 버전 1.3.1에 포함된 커밋을 확인하세요.
종속 항목 업데이트
- 이제 Activity가 Kotlin
1.5.21
에 종속됩니다. - 이제 Activity Compose가 Compose
1.0.1
에 종속됩니다.
버전 1.3.0
버전 1.3.0
2021년 7월 28일
androidx.activity:activity:1.3.0
, androidx.activity:activity-compose:1.3.0
및 androidx.activity:activity-ktx:1.3.0
이 출시되었습니다. 버전 1.3.0에 포함된 커밋을 확인하세요.
1.2.0 이후 중요 변경사항
- Activity Compose 아티팩트 -
activity-compose
아티팩트가 활동에서 Jetpack Compose UI를 호스팅하는setContent
확장 메서드와 시스템 뒤로 버튼과 Activity Result API를 처리하기 위해ComponentActivity
API와 상호작용하는 Compose 특정 래퍼를 제공합니다. 자세한 내용은 문서를 참고하세요. - CaptureVideo 계약 -
CaptureVideo
ActivityResultContract
가 현재 지원 중단된TakeVideo
계약을 대체하고 여러 카메라 앱에서 작동하는 성공을 나타내는 부울을 반환합니다. - PIP 모드 힌트 보기 추적 -
activity-ktx
의 사용자가 이제Activity
에서trackPipAnimationHintView
확장 메서드를 사용하여 창을 기준으로 위치를 변경할 때 뷰의 새 위치로PictureInPictureParams
를 자동으로 다시 빌드할 수 있습니다.
버전 1.3.0-rc02
2021년 7월 14일
androidx.activity:activity:1.3.0-rc02
, androidx.activity:activity-compose:1.3.0-rc02
및 androidx.activity:activity-ktx:1.3.0-rc02
가 출시되었습니다. 버전 1.3.0-rc02에 포함된 커밋을 확인하세요.
버그 수정
- 이제
ActivityResultRegistry
콜백이 제대로 저장되고 복원되므로 savedState에서 콜백이 중복되지 않습니다. (I97816, b/191893160)
버전 1.3.0-rc01
2021년 7월 1일
androidx.activity:activity:1.3.0-rc01
, androidx.activity:activity-compose:1.3.0-rc01
및 androidx.activity:activity-ktx:1.3.0-rc01
버전은 1.3.0-beta02
에서 변경사항 없이 출시되었습니다. 버전 1.3.0-rc01에 포함된 커밋을 확인하세요.
버전 1.3.0-beta02
2021년 6월 16일
androidx.activity:activity:1.3.0-beta02
, androidx.activity:activity-compose:1.3.0-beta02
및 androidx.activity:activity-ktx:1.3.0-beta02
가 출시되었습니다. 버전 1.3.0-beta02에 포함된 커밋을 확인하세요.
activity-compose
가 Compose 1.0.0-beta09
에 종속되도록 업데이트되었습니다. 이제 androidx.compose.ui:ui-test-junit4
는 activity-compose
에 컴파일 시간 종속 항목을 갖습니다.
버전 1.3.0-beta01
2021년 6월 2일
androidx.activity:activity:1.3.0-beta01
, androidx.activity:activity-compose:1.3.0-beta01
및 androidx.activity:activity-ktx:1.3.0-beta01
이 출시되었습니다. 버전 1.3.0-beta01에 포함된 커밋을 확인하세요.
API 변경사항
- 이전에 지원 중단된
@Composable registerForActivityResult()
메서드가 삭제되었습니다.rememberLauncherForActivityResult()
를 사용하세요. (Ic39d3)
버전 1.3.0-alpha08
2021년 5월 18일
androidx.activity:activity:1.3.0-alpha08
, androidx.activity:activity-compose:1.3.0-alpha08
, androidx.activity:activity-ktx:1.3.0-alpha08
이 출시되었습니다. 버전 1.3.0-alpha08에 포함된 커밋을 확인하세요.
새로운 기능
- 새
CaptureVideo
ActivityResultContract
가 주어진 URI에 동영상이 성공적으로 저장되었는지 나타내는 부울을ActivityResultCallback
에 반환합니다. 현재 지원 중단된TakeVideo
계약을 대체합니다. 카메라 앱이 썸네일 비트맵 반환을 거의 지원하지 않아서 결과가 도움이 되지 않기 때문입니다. (Ie21f2, b/185938070) - 뷰가 이동할 때마다 PipParams의 소스 rect 힌트를 업데이트하는 새 API
Activity#setPipAnimationHintView
를 추가했습니다. (I9063d)
API 변경사항
- 이제
rememberLauncherForActivityResult
함수가unregister()
함수를 지원 중단하는 런처를 반환합니다. 런처 등록 및 등록 취소는rememberLauncherForActivityResult
에서 자동으로 처리됩니다. (I2443e)
Compose 호환성
androidx.activity:activity-compose:1.3.0-alpha08
은 Compose 버전1.0.0-beta07
이상과만 호환됩니다.
버전 1.3.0-alpha07
2021년 4월 21일
androidx.activity:activity:1.3.0-alpha07
, androidx.activity:activity-compose:1.3.0-alpha07
및 androidx.activity:activity-ktx:1.3.0-alpha07
이 출시되었습니다. 버전 1.3.0-alpha07에 포함된 커밋을 확인하세요.
버그 수정
- 이제
rememberLauncherForActivityResult
는 재구성으로 인해 계약이 변경되어도 동일한ActivityResultLauncher
인스턴스에 안정적인 참조를 반환합니다. (Id2d6d) 1.3.0
이상의 안정적이지 않은 Fragment 버전을 사용해도1.3.0
을 사용하라는 거짓양성 린트 오류가 발생하지 않습니다. (aosp/1670206, b/184847092)
버전 1.3.0-alpha06
2021년 4월 7일
androidx.activity:activity:1.3.0-alpha06
, androidx.activity:activity-compose:1.3.0-alpha06
및 androidx.activity:activity-ktx:1.3.0-alpha06
이 출시되었습니다. 버전 1.3.0-alpha06에 포함된 커밋을 확인하세요.
API 변경사항
- 반환된
ActivityResultLauncher
가 사용자 대신 저장된 관리 대상 객체임을 더 확실히 표현하기 위해registerForActivityResult()
API의 이름을rememberLauncherForActivityResult()
로 바꾸었습니다. 이제unregister
호출을 시도하면 반환된ActivityResultLauncher
에서 오류가 발생합니다. (I2bb6d) LocalOnBackPressedDispatcherOwner.current
와LocalActivityResultRegistryOwner.current
는 이제 현재 컴포지션에서 사용할 수 있는지 더 효과적으로 판단할 수 있도록 null을 허용하는 값을 반환합니다. 이제 이러한 API가 필요한 각각의 API(예:BackHandler
,rememberLauncherForActivityResult()
)에서는 기본 소유자를 찾을 수 없는 경우 더 상세한 오류가 발생합니다.NavHost
는 이제OnBackPressedDispatcherOwner
를 찾을 수 없는 경우에도 작동합니다(예:NavHost
를 미리보기하는 경우). (I7d8b4)
버그 수정
- 이제
BackHandler
는 활동이STOPPED
이었다가 다시STARTED
가 되고 다른 콜백이 LifecycleOwner에 추가된 이벤트에서 뒤로 버튼 누름을 제대로 가로챕니다. (I71de6, b/182284739) Unit
입력이 있는 맞춤ActivityResultContract
로launch()
확장 메서드를 사용하면 더 이상NullPointerException
이 발생하지 않습니다. (I76282, b/183837954)
버전 1.3.0-alpha05
2021년 3월 24일
androidx.activity:activity:1.3.0-alpha05
, androidx.activity:activity-compose:1.3.0-alpha05
, androidx.activity:activity-ktx:1.3.0-alpha05
가 출시되었습니다. 버전 1.3.0-alpha05에 포함된 커밋을 확인하세요.
버그 수정
- Activity 1.2.2 이상: Fragment 1.3.1 이상을 사용할 때
InvalidFragmentVersionForActivityResult
린트 검사에서 거짓양성이 발생하는 문제를 수정했습니다. (I54da1, b/182388985) - Activity 1.2.2 이상: 이제
ComponentActivity
가 이전에 다른Intent
에서 추가 항목으로 보유된ActivityResultContract
에서Intent
를 실행할 때ClassNotFoundException
을 방지합니다. (Ieff05, b/182906230)
종속 항목 업데이트
- Activity 1.2.2 이상: Activity가 이제 Lifecycle
2.3.1
에 종속됩니다.
버전 1.3.0-alpha04
2021년 3월 10일
androidx.activity:activity:1.3.0-alpha04
, androidx.activity:activity-compose:1.3.0-alpha04
및 androidx.activity:activity-ktx:1.3.0-alpha04
가 출시되었습니다. 버전 1.3.0-alpha04에 포함된 커밋을 확인하세요.
버그 수정
- Activity
1.2.1
이상: 이제RequestMultiplePermissions
에서 이전에 부여되지 않은 권한만이 아닌 요청된 모든 권한의 결과를 항상 반환합니다. (I50bc3, b/180884668) - Activity
1.2.1
이상: 이제unregister()
를 호출하고 동일한 키로 다시register()
를 호출하더라도 진행 중인launch()
요청이 결과를 반환하도록ActivityResultRegistry
에서 보장합니다. (I9ef34, b/181267562) - Activity Compose에서 런타임 클래스 경로에 더 이상 테스트 종속 항목을 추가하지 않습니다. (Ifd8b3)
- 이전에 설정된
onBack
람다가 재구성 후에도 계속 사용되던BackHandler
관련 문제를 해결했습니다. (8eb5eb)
버전 1.3.0-alpha03
2021년 2월 24일
androidx.activity:activity:1.3.0-alpha03
, androidx.activity:activity-compose:1.3.0-alpha03
및 androidx.activity:activity-ktx:1.3.0-alpha03
이 출시되었습니다. 버전 1.3.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 컴포저블 내의 활동에서 결과를 얻을 수 있는 컴포저블
registerForActivityResult
함수가 있습니다. (Ia7851, b/172690553)
API 변경사항
- 이제
LocalOnBackPressedDispatcherOwner
에는CompositionLocalProvider
와 함께 사용할 수 있는provides
함수가 있습니다. 이 함수는asProvidableCompositionLocal()
API를 대체합니다. (I45d24)
버전 1.3.0-alpha02
2021년 2월 10일
androidx.activity:activity:1.3.0-alpha02
, androidx.activity:activity-compose:1.3.0-alpha02
및 androidx.activity:activity-ktx:1.3.0-alpha02
가 출시되었습니다. 버전 1.3.0-alpha02에 포함된 커밋을 확인하세요.
버그 수정
- Compose
1.0.0-alpha12
를 사용할 때NoSuchMethodError: No static method setContent
예외가 발생하는 Activity Compose1.3.0-alpha01
의 문제를 수정했습니다. 모든 Compose 사용자는1.3.0-alpha02
이상을 사용해야 합니다. (b/179911234)
API 변경사항
BackHandler
API를 사용하여 Composable에서 시스템 뒤로 버튼을 가로채도록 할 수 있습니다. (I58ed5, b/172154006)
버전 1.3.0-alpha01
2021년 2월 10일
androidx.activity:activity:1.3.0-alpha01
, androidx.activity:activity-compose:1.3.0-alpha01
및 androidx.activity:activity-ktx:1.3.0-alpha01
이 출시되었습니다. 버전 1.3.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- 새로운
activity-compose
아티팩트는androidx.activity
관련 API를 위한 Jetpack Compose 전용 도우미를 제공합니다.ComponentActivity.setContent
를androidx.compose.ui.platform.setContent
에서androidx.activity.compose.setContent
로 이동했습니다. (Icf416)
알려진 문제
- Activity Compose
1.3.0-alpha01
과 이에 종속된 라이브러리(예:androidx.compose.ui:ui-test-junit4:1.0.0-alpha12
)를 사용하면NoSuchMethodError: No static method setContent
예외가 발생합니다. (b/179911234)
버전 1.2.4
버전 1.2.4
2021년 7월 21일
androidx.activity:activity:1.2.4
및 androidx.activity:activity-ktx:1.2.4
가 출시되었습니다. 버전 1.2.4에 포함된 커밋을 확인하세요.
버그 수정
- Activity
1.3.0-rc02
에서: 이제 ActivityResultRegistry 콜백이 제대로 저장되고 복원되므로 savedState에서 콜백이 중복되지 않습니다. (I97816, b/191893160)
버전 1.2.3
버전 1.2.3
2021년 5월 5일
androidx.activity:activity:1.2.3
및 androidx.activity:activity-ktx:1.2.3
이 출시되었습니다. 버전 1.2.3에 포함된 커밋을 확인하세요.
버그 수정
Unit
입력이 있는 맞춤ActivityResultContract
로launch()
확장 메서드를 사용하면 더 이상NullPointerException
이 발생하지 않습니다. (I76282, b/183837954)- Fragments 새 버전의 스냅샷, 알파, 베타 또는 RC 빌드를 사용할 때 Fragment
1.3.0
을 사용하라고 하는 거짓양성 린트 오류를 수정했습니다. (f4a57e, b/184847092)
버전 1.2.2
버전 1.2.2
2021년 3월 24일
androidx.activity:activity:1.2.2
및 androidx.activity:activity-ktx:1.2.2
가 출시되었습니다. 버전 1.2.2에 포함된 커밋을 확인하세요.
버그 수정
- Fragment 1.3.1 이상을 사용할 때
InvalidFragmentVersionForActivityResult
린트 검사에서 거짓양성이 발생하는 문제를 수정했습니다. (I54da1, b/182388985) - 이제
ComponentActivity
가 이전에 다른Intent
에서 추가 항목으로 보유된ActivityResultContract
에서Intent
를 실행할 때ClassNotFoundException
을 방지합니다. (Ieff05, b/182906230)
종속 항목 업데이트
- 이제 Activity가 Lifecycle
2.3.1
에 종속됩니다.
버전 1.2.1
버전 1.2.1
2021년 3월 10일
androidx.activity:activity:1.2.1
및 androidx.activity:activity-ktx:1.2.1
이 출시되었습니다. 버전 1.2.1에 포함된 커밋을 확인하세요.
버그 수정
- 이제
RequestMultiplePermissions
는 이전에 부여되지 않은 권한만이 아닌 요청된 모든 권한의 결과를 항상 반환합니다. (I50bc3, b/180884668) - 이제
unregister()
를 호출하고 동일한 키로 다시register()
를 호출하더라도 진행 중인launch()
요청이 결과를 반환하도록ActivityResultRegistry
에서 보장합니다. (I9ef34, b/181267562)
버전 1.2.0
버전 1.2.0
2021년 2월 10일
androidx.activity:activity:1.2.0
및 androidx.activity:activity-ktx:1.2.0
이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.
1.1.0 이후 주요 변경사항
- Activity Result API: 이제
ComponentActivity
는ActivityResultRegistry
를 제공하여 Activity나 Fragment에서 메서드를 재정의하지 않고startActivityForResult()
+onActivityResult()
와requestPermissions()
+onRequestPermissionsResult()
흐름을 처리할 수 있도록 하며ActivityResultContract
를 통해 유형 안전성을 높이고 이러한 흐름을 테스트하는 후크를 제공합니다. 업데이트된 Activity에서 결과 가져오기를 참고하세요.
ContextAware
: 이제ComponentActivity
에서ContextAware
를 구현하므로 기본Activity.onCreate()
이전에 콜백을 수신할OnContextAvailableListener
인스턴스를 하나 이상 추가할 수 있습니다.- 정지 Kotlin 확장
withContextAvailable()
을 사용하면 컨텍스트를 사용할 수 있게 될 때 정지되지 않은 블록을 실행하고 결과를 반환할 수 있습니다. - 이 API는 Fragment 1.3.0의
FragmentActivity
에서FragmentManager
상태를 복원하는 데 사용합니다.FragmentActivity
의 서브클래스에 추가된 모든 리스너는 이 리스너 이후에 실행됩니다. - 이 API는 AppCompat 1.3.0-alpha02 이상의
AppCompatActivity
에서 사용합니다.AppCompatActivity
의 서브클래스에 추가된 모든 리스너는 이 리스너 이후에 실행됩니다.
- 정지 Kotlin 확장
ViewTree
지원: 이제ComponentActivity
에서 Lifecycle2.3.0
과 SavedState1.1.0
에 추가된ViewTreeLifecycleOwner.get(View)
,ViewTreeViewModelStoreOwner.get(View)
,ViewTreeSavedStateRegistryOwner
API를 지원하며 이러한 API는ComponentActivity
에 직접 추가된 모든 View의LifecycleOwner
,ViewModelStoreOwner
,SavedStateRegistryOwner
로 Activity를 반환합니다.
- reportFullyDrawn() 백포트 -
reportFullyDrawn()
의Activity
메서드는 모든 API 수준에서 작동하도록ComponentActivity
로 백포트되었습니다. 이는 API 19에서 발생하던 비정상 종료 문제를 수정하고 모든 API 수준에서 이 메서드에 관한 추적을 추가합니다.
버전 1.2.0-rc01
2020년 12월 16일
androidx.activity:activity:1.2.0-rc01
및 androidx.activity:activity-ktx:1.2.0-rc01
이 출시되었습니다. 버전 1.2.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
- 이제
ActivityResultRegistry
는 저장된 정확한 상태를 항상 복원합니다. (Idd56b) ComponentActivity.reportFullyDrawn
에 트레이싱을 추가합니다. (Ic7632)
외부 기여
ComponentActivity
는 이제 모든 API 수준에서 호출되도록reportFullyDrawn()
을 재정의하며 API 19 기기에서 적절한 시스템 권한 없이 이 메서드를 호출할 때 발생하는 비정상 종료를 해결합니다. 사이먼 쉴러님께 감사드립니다. (b/163239764, #103)
버전 1.2.0-beta02
2020년 12월 2일
androidx.activity:activity:1.2.0-beta02
및 androidx.activity:activity-ktx:1.2.0-beta02
가 출시되었습니다. 버전 1.2.0-beta02에 포함된 커밋을 확인하세요.
버그 수정
Lifecycle
에 등록한 경우 Activity Result API가 결과를 전달하기 전에 Lifecycle의STARTED
까지 기다리지 않는 문제를 수정했습니다. (I109ea)
외부 기여
launch()
가ActivityNotFoundException
을 발생시킬 수 있음을 명시적으로 알릴 수 있도록 문서를 업데이트했습니다. 미할 지엘린스키님께 감사드립니다. (aosp/1493580)
버전 1.2.0-beta01
2020년 10월 1일
androidx.activity:activity:1.2.0-beta01
및 androidx.activity:activity-ktx:1.2.0-beta01
이 출시되었습니다. 버전 1.2.0-beta01에 포함된 커밋을 확인하세요.
버그 수정
ActivityResultRegistry
는 이제 요청 코드register()
로 사용하기 위해 할당되지 않은 정수를 찾을 때까지 정수를 무작위로 생성합니다. 따라서 요청 코드 증가로 인해 발생할 수 있는 정수 오버플로가 방지됩니다. (b/168779518)ActivityResultLauncher
에서unregister()
를 호출할 때Lifecycle
관찰자가 올바로 삭제됩니다. (b/165608393)
동작 변경사항
Lifecycle
이 이미STARTED
에 도달한LifecycleOwner
로register()
를 호출하려고 하면 이제ActivityResultRegistry
에서IllegalStateException
이 발생합니다. (b/165435866)
문서가 업데이트됨
ContextAware
문서가LifecycleOwner
에 연결되어Lifecycle
콜백을 생성 및 폐기 이벤트에 적절한 위치로 강조표시합니다. (aosp/1414152)
버전 1.2.0-alpha08
2020년 8월 19일
androidx.activity:activity:1.2.0-alpha08
및 androidx.activity:activity-ktx:1.2.0-alpha08
이 출시되었습니다. 버전 1.2.0-alpha08에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
ComponentActivity
는ContextAware
를 구현하므로 기본Activity.onCreate()
이전에 콜백을 수신할OnContextAvailableListener
인스턴스를 하나 이상 추가할 수 있습니다. (b/161390636)- 정지 Kotlin 확장
withContextAvailable()
을 사용하면 컨텍스트를 사용할 수 있게 될 때 정지되지 않은 블록을 실행하고 결과를 반환할 수 있습니다. (I8290c) - 이 API는 Fragment 1.3.0-alpha08의
FragmentActivity
에서FragmentManager
상태를 복원하는 데 사용됩니다.FragmentActivity
의 서브클래스에 추가된 모든 리스너는 이 리스너 이후에 실행됩니다. (I513da) - 이 API는 AppCompat 1.3.0-alpha02의
AppCompatActivity
에서 사용됩니다.AppCompatActivity
의 서브클래스에 추가된 모든 리스너는 이 리스너 이후에 실행됩니다. (I513da)
- 정지 Kotlin 확장
버그 수정
- Lint 27.1.0 이상을 사용할 때
ActivityResultFragmentVersionDetector
린트 검사가 중단되는 문제가 수정되었습니다. (b/162155191)
버전 1.2.0-alpha07
2020년 7월 22일
androidx.activity:activity:1.2.0-alpha07
및 androidx.activity:activity-ktx:1.2.0-alpha07
가 출시되었습니다. 버전 1.2.0-alpha07에 포함된 커밋을 확인하세요.
새로운 기능
- Activity Result API 사용 시, Fragment
1.3.0-alpha07
을 사용하는지 확인하는 새로운InvalidFragmentVersionForActivityResult
린트 검사가 추가되어 '유효하지 않은 요청 코드' 발생으로 인한 런타임 비정상 종료와 이전 버전의 Fragment 사용으로 발생하는 작동하지 않는 권한 요청을 방지합니다. (b/152554847)
외부 기여
RequestPermission
활동 결과 계약의 결과를 파싱할 때 발생하는ArrayIndexOutOfBoundsException
을 수정했습니다. (I8f9e3, b/161057605)
버전 1.2.0-alpha06
2020년 6월 10일
androidx.activity:activity:1.2.0-alpha06
및 androidx.activity:activity-ktx:1.2.0-alpha06
이 출시되었습니다. 버전 1.2.0-alpha06에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 Kotlin에서
ActivityResult
클래스의 구조를 해체하여requestCode
및intent
에 직접 액세스할 수 있습니다. (b/157212935) - 이제
ActivityResultLauncher
를 사용하여 런처를 등록하는 데 사용된ActivityResultContract
를 가져올 수 있습니다. (b/156875743)
API 변경사항
- 브레이킹 체인지:
ActivityResultRegistry
의invoke()
메서드 이름이onLaunch()
로 변경되었습니다. (b/157496491) - 이제 결과가 반환되지 않으면
OpenMultipleDocuments
계약이 등록된 콜백에null
대신 빈 목록을 반환합니다. (b/157348014)
버전 1.2.0-alpha05
2020년 5월 20일
androidx.activity:activity:1.2.0-alpha05
및 androidx.activity:activity-ktx:1.2.0-alpha05
가 출시되었습니다. 버전 1.2.0-alpha05에 포함된 커밋을 확인하세요.
새로운 기능
ComponentActivity
내에서View
를 사용할 때 수명 주기2.3.0-alpha03
의ViewTreeViewModelStoreOwner
및 SavedState1.1.0-alpha01
의ViewTreeSavedStateRegistryOwner
지원이 추가되었습니다. (aosp/1297993, aosp/1300264)
API 변경사항
- 이제
TakePicture
계약이 제공된Uri
에 이미지를 작성할 때 카메라 앱에서 거의 지원되지 않았던 미리보기 이미지Bitmap
대신 성공을 나타내는boolean
을 반환합니다. (b/154302879) - 명시적으로
launch()
를 사용하여 비동기 작업임을 더 잘 나타내기 위해ActivityResultLauncher
의invoke()
확장이 삭제되었습니다.launch
의 Kotlin 확장이null
또는Unit
을 전달할 필요성을 제거하는ActivityResultLauncher<Void>
및ActivityResultLauncher<Unit>
의androidx.activity.result
패키지에 각각 추가되어 이전invoke()
확장에서 동작을 미러링합니다. (aosp/1304674, aosp/1304675) setFlagsMask()
및setFlagsValues()
의IntentSenderRequest.Builder
메서드가 단일setFlags()
메서드로 결합되었습니다. (aosp/1302111)
버그 수정
LifecycleOwner
에ActivityResultCallback
을 등록할 때 상태가STARTED
에 도달하기 전에 콜백이 트리거되는 문제가 수정되었습니다. (aosp/1309744)
동작 변경사항
- 이제
ActivityResultRegistry
는0
에서가 아닌0xFFFF
에서 시작하는 요청 코드를 생성하므로 활동에서startActivityForResult()
또는requestPermissions()
를 사용할 때 중복을 방지합니다. (aosp/1302324)
버전 1.2.0-alpha04
2020년 4월 29일
androidx.activity:activity:1.2.0-alpha04
및 androidx.activity:activity-ktx:1.2.0-alpha04
가 출시되었습니다. 버전 1.2.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
- ActivityResult API에 startIntentSenderForResult를 호출할 수 있는 계약이 추가되었습니다. (b/153007517)
API 변경사항
prepareCall()
메서드의 이름이 여기ComponentActivity
와 Fragment1.3.0-alpha04
에서 모두registerForActivityResult()
로 변경되었습니다. (aosp/1278717)GetContents
,OpenDocuments
,RequestPermissions
계약의 이름이 각각GetMultipleContents
,OpenMultipleDocuments
,RequestMultiplePermissions
로 변경되었습니다. (aosp/1280161)- 이제
ComponentActivity
가ActivityResultRegisteryOwner
인터페이스를 구현합니다. (aosp/1290888) ComponentActivity
의startActivityForResult()
/onActivityResult()
및onRequestPermissionsResult()
API가 지원 중단되었습니다. Activity Result API를 사용하세요. (b/154751887)
버그 수정
GetMultipleContents
및OpenMultipleDocuments
계약을 사용하고 단일 항목을 선택하면 이제 콜백으로 올바르게 반환됩니다. (b/152941153)
버전 1.2.0-alpha03
2020년 4월 1일
androidx.activity:activity:1.2.0-alpha03
및 androidx.activity:activity-ktx:1.2.0-alpha03
이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
ActivityResultContracts
에 의해 제공되는 사전 빌드 계약 세트에TakeVideo
,PickContact
,GetContent
,GetContents
,OpenDocument
,OpenDocuments
,OpenDocumentTree
,CreateDocument
계약이 추가되었습니다. (aosp/1262482, aosp/1266916, aosp/1268960)- 이제 Activity Result API에서 선택적인
ActivityOptionsCompat
를 통해 결과에 대한 활동 실행을 지원합니다. (b/151860054)
API 변경사항
- 이제
TakePicture
계약은 이미지 저장 위치에 관한Uri
입력을 받습니다. 어떠한 입력도 받지 않는 이전 계약의 이름이TakePicturePreview
로 변경되었습니다. (aosp/1262482) ActivityResultRegistry
의registerActivityResultCallback()
메서드 이름이register()
로 변경되었습니다. (aosp/1267621)ActivityResultLauncher
의dispose()
메서드 이름이unregister()
로 변경되었고ActivityResultRegistry
의unregisterResultCallback()
가 삭제되었습니다. (aosp/1267621)- 이제
ActivityResultContact
의createIntent()
메서드는 입력과 함께Context
를 받아 명시적 인텐트를 만들 수 있습니다. (aosp/1238800) - 이제
ActivityResultContract
이getSynchronousResult()
를 재정의하여startActivityForResult
를 호출하지 않고 결과를 전달할 수 있습니다. 요청된 권한이 이미 부여된 경우RequestPermission
및RequestPermissions
계약에서 '부여됨' 상태를 올바르게 전달하는 데 사용됩니다. (b/151110799) - 이전에 사용 가능한
Dial
계약이 삭제되었습니다.Intent
가startActivityForResult()
와 함께 사용되도록 되어있지 않기 때문입니다. (aosp/1266916) - 이제 확장되지 않은 많은 Activity Result API 다수가
final
입니다. 여기에는getActivityResultRegistry()
,prepareCall()
메서드,invoke()
를 제외한 모든ActivityResultRegistry
메서드, 선택적 추가 항목을 지원하지 않는 여러 기본 계약이 포함됩니다. (b/152439361)
버그 수정
- 구성 변경 후 아직 재등록되지 않은 콜백에 결과를 전달하려고 할 때
ActivityResultRegistry
의NullPointerException
이 수정되었습니다. 이제ActivityResultRegistry
가 대기 중인 결과를 보류하고 콜백이 다시 등록되면 결과를 전달합니다. (b/152137004)
버전 1.2.0-alpha02
2020년 3월 18일
androidx.activity:activity:1.2.0-alpha02
및 androidx.activity:activity-ktx:1.2.0-alpha02
가 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- ActivityResultRegistry: 이제
ComponentActivity
가ActivityResultRegistry
를 제공하여 활동 또는 프래그먼트 내 메서드를 재정의하지 않고도startActivityForResult()
+onActivityResult()
뿐 아니라requestPermissions()
+onRequestPermissionsResult()
플로우를 처리하도록 지원하고,ActivityResultContract
를 통해 유형 안정성을 높이고, 이러한 플로우 테스트에 후크를 제공합니다. 업데이트된 Activity에서 결과 가져오기를 참고하세요. (b/125158199 참조)
버전 1.2.0-alpha01
2020년 3월 4일
androidx.activity:activity:1.2.0-alpha01
및 androidx.activity:activity-ktx:1.2.0-alpha01
이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- 모든 뷰에 관해
LifecycleOwner
가 Activity에 직접 추가될 때 Activity를 반환하도록 Lifecycle2.3.0-alpha01
에 추가된ViewTreeLifecycleOwner.get(View)
API에 관한 지원이 추가되었습니다. (aosp/1182955)
버그 수정
android.app.FragmentManager
내 버그로 인해onBackPressed()
에서IllegalStateException
을 일으키는 이전 버전의 플랫폼에서 실행 시 활동1.1.0
에 도입되던 회귀 문제를 수정했습니다. (b/146290338)
버전 1.1.0
버전 1.1.0
2020년 1월 22일
androidx.activity:activity:1.1.0
이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.
1.0.0 이후 중요 변경사항
- Lifecycle ViewModel SavedState 통합:
by viewModels()
,ViewModelProvider
생성자 또는ViewModelProviders.of()
를ComponentActivity
또는 그 서브클래스와 함께 사용할 때SavedStateViewModelFactory
가 이제 기본 팩토리로 사용됩니다.
버전 1.1.0-rc03
2019년 12월 4일
androidx.activity:activity:1.1.0-rc03
및 androidx.activity:activity-ktx:1.1.0-rc03
이 출시되었습니다. 버전 1.1.0-rc03에 포함된 커밋을 확인하세요.
종속 항목 변경사항
- 이제 Activity가 Lifecycle
2.2.0-rc03
및 Lifecycle ViewModel SavedState1.0.0-rc03
에 종속됩니다.
버전 1.1.0-rc02
2019년 11월 7일
androidx.activity:activity:1.1.0-rc02
및 androidx.activity:activity-ktx:1.1.0-rc02
가 출시되었습니다. 버전 1.1.0-rc02에 포함된 커밋을 확인하세요.
종속 항목 변경사항
- 이제 Activity가 Lifecycle
2.2.0-rc02
에 종속됩니다.
버전 1.1.0-rc01
2019년 10월 23일
androidx.activity:activity:1.1.0-rc01
및 androidx.activity:activity-ktx:1.1.0-rc01
이 1.1.0-beta01
에서 변경사항 없이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.
버전 1.1.0-beta01
2019년 10월 9일
androidx.activity:activity:1.1.0-beta01
및 androidx.activity:activity-ktx:1.1.0-beta01
이 출시되었습니다. 버전 1.1.0-beta01에 포함된 커밋을 확인하세요.
종속 항목 변경사항
- 이제 Activity가 SavedState 1.0.0 안정화 버전에 종속됩니다.
버전 1.1.0-alpha03
2019년 9월 5일
androidx.activity:activity:1.1.0-alpha03
및 androidx.activity:activity-ktx:1.1.0-alpha03
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
새로운 기능
- 이제 Activity가 Core 1.1.0 안정화 버전에 종속됩니다.
버그 수정
- 이제 Activity가 Lifecycle
2.2.0-alpha04
에 종속됩니다.
버전 1.1.0-alpha02
2019년 8월 7일
androidx.activity:activity:1.1.0-alpha02
및 androidx.activity:activity-ktx:1.1.0-alpha02
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
새로운 기능
- 이제
SavedStateViewModelFactory
가ComponentActivity
와 함께by viewModels()
,ViewModelProvider
생성자,ViewModelProviders.of()
를 사용할 때 사용되는 기본 팩터리입니다. (b/135716331 참조)
버전 1.1.0-alpha01
2019년 7월 2일
androidx.activity:activity:1.1.0-alpha01
및 androidx.activity:activity-ktx:1.1.0-alpha01
가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
새로운 기능
- 이제
activity
가 Lifecycle2.2.0-alpha02
에 종속됩니다. (aosp/1007817 참조) activity-ktx
에lifecycle-runtime-ktx
에 관한 종속 항목이 추가되었습니다. 따라서activity-ktx
또는activity-ktx
에 종속되는 라이브러리(예:fragment-ktx
)를 사용할 때 더 이상 종속 항목에 명시적으로 추가할 필요가 없습니다. (aosp/987162)
버전 1.0.0
버전 1.0.0
2019년 9월 5일
androidx.activity:activity:1.0.0
및 androidx.activity:activity-ktx:1.0.0
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
1.0.0의 주요 기능
- ComponentActivity:
ComponentActivity
는 Fragment1.1.0
의FragmentActivity
에 관해 그리고 확장하여 AppCompat1.1.0
의AppCompatActivity
에 관해 새로운 기본 클래스 역할을 합니다. - activity-ktx:
activity-ktx
모듈에는 ViewModel에 액세스하기 위한by viewModels
Kotlin 속성 확장을 포함합니다. Fragment1.1.0
의fragment-ktx
를 포함하면 이 모듈이 자동으로 포함됩니다. - OnBackPressedDispatcher:
onBackPressed()
를 재정의하는 대신 구성 가능한 다른 방법으로, 이제 시스템의 뒤로 버튼 이벤트를 가로채도록LifecycleOwner
에서(예: Fragment)OnBackPressedCallback
을 등록할 수 있습니다. 수신기 버전addCallback
이 포함된 람다가activity-ktx
에 추가되었습니다. 자세한 내용은 맞춤형 뒤로 탐색 기능 제공 문서를 참고하세요. - onRetainCustomNonConfigurationInstance 지원 중단:
onRetainCustomNonConfigurationInstance()
및 관련getLastCustomNonConfigurationInstance()
API가 지원 중단되었습니다. 비구성 상태를 저장하는 데 ViewModel을 사용하는 것이 좋습니다. 보관된 객체의 소유권을 명확히 하고 활동이 최종적으로 제거되는 경우 리소스를 지우기 위한onCleared()
콜백을 제공하는ViewModelStoreOwner
에 적합한 구성 가능한 솔루션을 제공합니다.
버전 1.0.0-rc01
2019년 7월 2일
androidx.activity:activity:1.0.0-rc01
및 androidx.activity:activity-ktx:1.0.0-rc01
이 1.0.0-beta01
에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버전 1.0.0-beta01
2019년 6월 5일
androidx.activity::activity:1.0.0-beta01
및 androidx.activity:activity-ktx:1.0.0-beta01
이 1.0.0-alpha08
에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버전 1.0.0-alpha08
2019년 5월 7일
androidx.activity:activity:1.0.0-alpha08
및 androidx.activity:activity-ktx:1.0.0-alpha08
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
API 변경사항
- 브레이킹 체인지: 이전에 지원 중단된
ComponentActivity
에 관한addOnBackPressedCallback
및removeOnBackPressedCallback
메서드를 삭제했습니다. (aosp/953857 참조) - 이제
OnBackPressedCallback
의setEnabled()
및isEnabled()
메서드가 최종입니다. (b/131416833 참조) - 이제
OnBackPressedCallback
의remove()
메서드가 최종입니다. (aosp/952720 참조) - 이제
OnBackPressedDispatcher
에 공개 생성자가 있으므로 테스트 등을 위해 자체 인스턴스를 생성할 수 있습니다. (aosp/953431 참조) - 이제
ComponentActivity
의onBackPressed()
가@MainThread
로 명시적으로 표시됩니다. (aosp/952721 참조)
버그 수정
LifecycleOwner
와 함께 추가된OnBackPressedCalback
의handleOnBackPressed()
메서드 내에서remove()
를 호출할 때 발생하는ConcurrentModificationException
을 수정했습니다. (b/131765095 참조)
버전 1.0.0-alpha07
2019년 4월 25일
androidx.activity:activity:1.0.0-alpha07
및 androidx.activity:activity-ktx:1.0.0-alpha07
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
API 변경사항
이 릴리스에서는 onBackPressed()
처리에 상당한 변경사항이 있습니다. 자세한 내용은 업데이트된 맞춤형 뒤로 기능 문서를 참고하세요.
OnBackPressedCallback
및OnBackPressedDispatcher
의 메서드가@MainThread
로 표시되었습니다. (aosp/943813 참조)handleOnBackPressed()
메서드가 더 이상boolean
을 반환하지 않습니다. 대신OnBackPressedCallback
은 이제 추상 클래스이며 사용 설정하거나 사용 중지할 수 있습니다. 새isEnabled()
메서드가 true를 반환하는 경우에만handleOnBackPressed()
가 호출됩니다. 이 경우 뒤로 버튼을 반드시 처리해야 합니다. (aosp/944518 참조)OnBackPressedDispatcher
의addCallback
메서드가 더 이상Cancellable
인스턴스를 반환하지 않습니다. 이제OnBackPressedCallback
에 이 기능을 처리하는remove()
메서드가 포함되어 있으므로handleOnBackPressed()
중에remove()
를 호출할 수 있습니다. (aosp/944519 및 aosp/946316 참조)- 이제
activity-ktx
에는handleOnBackPressed()
를 구현하고isEnabled
및remove()
에 액세스할 수 있는 람다를 허용하는addCallback
을 위한 수신기 범위 지정 콜백이 포함되어 있습니다. (aosp/944520 참조)
버전 1.0.0-alpha06
2019년 4월 3일
androidx.activity:activity:1.0.0-alpha06
및 androidx.activity:activity-ktx:1.0.0-alpha06
이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
API 변경사항
- 이제 ComponentActivity에는
@LayoutRes int
를 사용하는 두 번째 생성자가 포함되어 있으며 이 생성자는@ContentView
로 AppCompatActivity 클래스에 주석을 다는 이전 동작을 대체합니다. 이 접근 방법은 앱과 라이브러리 모듈 모두에서 적용됩니다. (b/128352521 참조) - ComponentActivity의
OnBackPressedCallback
관련 API가 지원 중단되고getOnBackPressedDispatcher()
를 통해 검색 가능한 새OnBackPressedDispatcher
로 대체되었습니다. (aosp/922523 참조) - 새
OnBackPressedCallback
을OnBackPressedDispatcher
에 추가하는 메서드가 이제Cancellable
객체를 반환하므로OnBackPressedDispatcher
를 명시적으로 참조할 필요 없이 콜백을 삭제할 수 있습니다. (aosp/922523 참조) OnBackPressedCallback
을 연결된LifecycleOwner
와 함께 추가하면 이제 Lifecycle이 시작되고 중지될 때OnBackPressedCallback
이 추가 및 삭제됩니다. (aosp/922523 참조)
버전 1.0.0-alpha05
2019년 3월 13일
androidx.activity:activity:1.0.0-alpha05
및 androidx.activity:activity-ktx:1.0.0-alpha05
가 출시되었습니다. 이 출시에 포함된 커밋의 전체 목록은 여기에서 확인할 수 있습니다.
새로운 기능
- 이제
@ContentView
주석 조회가 캐시됩니다. (b/123709449 참조)
버전 1.0.0-alpha04
2019년 1월 30일
androidx.activity:activity 1.0.0-alpha04
및 androidx.activity:activity-ktx 1.0.0-alpha04
가 출시되었습니다.
새로운 기능
setContentView()
를 사용하는 대신 확장할 레이아웃 XML 파일을 나타낼 수 있는@ContentView
클래스 주석을 사용하도록 지원을 추가했습니다. (aosp/837619 참조)
API 변경사항
getViewModelStore()
는 재정의해서는 안 되며 향후 출시에서 완료될 예정이라는 메모가 추가되었습니다. 현재 이 메서드를 재정의하고 있다면 기능 요청을 제출하세요. (aosp/837619 참조)
버그 수정
activity
모듈은 이제activity-ktx
모듈의 종속성에 맞추기 위해 ViewModel 버전 2.1.0-alpha02에 종속됩니다.
버전 1.0.0-alpha03
2018년 12월 17일
androidx.activity 1.0.0-alpha03
이 출시되었습니다.
새로운 기능
- ComponentActivity는 이제
BundleSavedStateRegistryOwner
를 구현하며 새로 출시된 SavedState 라이브러리에 종속됩니다. [aosp/815133 참조] - ComponentActivity는 이제 InputMethodManager가 마지막 포커스 뷰를 유출시키는 Android 프레임워크 버그를 해결합니다. [b/37122102]
버전 1.0.0-alpha02
2018년 12월 3일
API 변경사항
getLifecycle()
은 재정의해서는 안 되며 향후 출시에서final
이 될 예정이라는 메모가 추가되었습니다. 현재 이 메서드를 재정의하려면 기능 요청을 제출하세요. (aosp/815834 참조)
버전 1.0.0-alpha01
2018년 11월 5일
androidx.activity 1.0.0-alpha01
에서는 기존 FragmentActivity
및 AppCompatActivity
의 새로운 기본 클래스로 ComponentActivity
를 도입합니다.
새로운 기능
- 이제
addOnBackPressedCallback
을 통해OnBackPressedCallback
을 등록하여 활동에서 메서드를 재정의하지 않고도onBackPressed()
콜백을 수신할 수 있습니다. ComponentActivity
에서ViewModel
을 검색하기 위한 새by viewModels()
Kotlin 속성 위임을 추가했습니다.- 대기 중인 입력 이벤트(예: 클릭)가 이제
onStop()
에서 취소됩니다.
API 변경사항
LifecycleOwner
및ViewModelStoreOwner
구현이FragmentActivity
에서ComponentActivity
로 이동했습니다.onRetainCustomNonConfigurationInstance
가 지원 중단되었습니다. 구성 변경 이후에도 효력을 유지해야 하는 객체를 저장하려면ViewModel
을 사용하세요.