Activity
최근 업데이트 | 현재 안정화 버전 | 다음 버전 후보 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2021년 3월 24일 | 1.2.2 | - | - | 1.3.0-alpha05 |
종속 항목 선언
Activity의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
dependencies { def activity_version = "1.2.2" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 만들기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.3.0
버전 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.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
이 활동에 추가될 때 활동을 반환하도록 수명 주기2.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
을 사용하세요.