6월 3일의 ⁠#Android11: 베타 버전 출시 행사에 참여하세요.

활동

최근 업데이트 현재 안정화 버전 다음 출시 후보 베타 버전 알파 버전
2020년 4월 29일 1.1.0 - - 1.2.0-alpha04

종속 항목 선언

Activity의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

    dependencies {
        def activity_version = "1.1.0"

        // Java language implementation
        implementation "androidx.activity:activity:$activity_version"
        // Kotlin
        implementation "androidx.activity:activity-ktx:$activity_version"
    }
    

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참조하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 만들기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 표를 추가할 수 있습니다.

새 문제 만들기

자세한 내용은 Issue Tracker 문서를 참조하세요.

버전 1.2.0

버전 1.2.0-alpha04

2020년 4월 29일

androidx.activity:activity:1.2.0-alpha04androidx.activity:activity-ktx:1.2.0-alpha04가 출시되었습니다. 버전 1.2.0-alpha04에 포함된 커밋을 확인하세요.

새로운 기능

  • ActivityResult API에 startIntentSenderForResult를 호출할 수 있는 계약이 추가되었습니다. (b/153007517 참조)

API 변경사항

  • prepareCall() 메서드의 이름이 여기 ComponentActivity프래그먼트 1.3.0-alpha04에서 모두 registerForActivityResult()로 변경되었습니다. (aosp/1278717 참조)
  • GetContents, OpenDocuments, RequestPermissions 계약의 이름이 각각 GetMultipleContents, OpenMultipleDocuments, RequestMultiplePermissions로 변경되었습니다. (aosp/1280161 참조)
  • 이제 ComponentActivityActivityResultRegisteryOwner 인터페이스를 구현합니다. (aosp/1290888 참조)
  • ComponentActivitystartActivityForResult()/onActivityResult()onRequestPermissionsResult() API가 지원 중단되었습니다. Activity Result API를 사용하세요. (b/154751887 참조)

버그 수정

  • GetMultipleContentsOpenMultipleDocuments 계약을 사용하고 단일 항목을 선택하면 이제 콜백으로 올바르게 반환됩니다. (b/152941153 참조)

버전 1.2.0-alpha03

2020년 4월 1일

androidx.activity:activity:1.2.0-alpha03androidx.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)
  • ActivityResultRegistryregisterActivityResultCallback() 메서드 이름이 register()로 변경되었습니다. (aosp/1267621)
  • ActivityResultLauncherdispose() 메서드 이름이 unregister()로 변경되었고 ActivityResultRegistryunregisterResultCallback()가 삭제되었습니다. (aosp/1267621)
  • 이제 ActivityResultContactcreateIntent() 메서드는 입력과 함께 Context를 받아 명시적 인텐트를 만들 수 있습니다. (aosp/1238800)
  • 이제 ActivityResultContractgetSynchronousResult()를 재정의하여 startActivityForResult를 호출하지 않고 결과를 전달할 수 있습니다. 요청된 권한이 이미 부여된 경우 RequestPermissionRequestPermissions 계약에서 '부여됨' 상태를 올바르게 전달하는 데 사용됩니다. (b/151110799)
  • 이전에 사용 가능한 Dial 계약이 삭제되었습니다. IntentstartActivityForResult()와 함께 사용되도록 되어있지 않기 때문입니다. (aosp/1266916)
  • 이제 확장되지 않은 많은 Activity Result API 다수가 final입니다. 여기에는 getActivityResultRegistry(), prepareCall() 메서드, invoke()를 제외한 모든 ActivityResultRegistry 메서드, 선택적 추가 항목을 지원하지 않는 여러 기본 계약이 포함됩니다. (b/152439361)

버그 수정

  • 구성 변경 후 아직 재등록되지 않은 콜백에 결과를 전달하려고 할 때 ActivityResultRegistryNullPointerException이 수정되었습니다. 이제 ActivityResultRegistry가 대기 중인 결과를 보류하고 콜백이 다시 등록되면 결과를 전달합니다. (b/152137004)

버전 1.2.0-alpha02

2020년 3월 18일

androidx.activity:activity:1.2.0-alpha02androidx.activity:activity-ktx:1.2.0-alpha02이 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.

새로운 기능

  • ActivityResultRegistry: 이제 ComponentActivityActivityResultRegistry를 제공하여 활동 또는 프래그먼트 내 메서드를 재정의하지 않고도 startActivityForResult()+onActivityResult()뿐 아니라 requestPermissions()+onRequestPermissionsResult() 플로우를 처리하도록 지원하고, ActivityResultContract를 통해 유형 안정성을 높이고, 이러한 플로우 테스트에 후크를 제공합니다. 업데이트된 활동에서 결과 가져오기를 참조하세요. (b/125158199)

버전 1.2.0-alpha01

2020년 3월 4일

androidx.activity:activity:1.2.0-alpha01androidx.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-rc03androidx.activity:activity-ktx:1.1.0-rc03이 출시되었습니다. 버전 1.1.0-rc03에 포함된 커밋을 확인하세요.

종속성 변경사항

  • 이제 Activity가 Lifecycle 2.2.0-rc03 및 Lifecycle ViewModel SavedState 1.0.0-rc03에 종속됩니다.

버전 1.1.0-rc02

2019년 11월 7일

androidx.activity:activity:1.1.0-rc02androidx.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-rc01androidx.activity:activity-ktx:1.1.0-rc011.1.0-beta01에서 변경사항 없이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.

버전 1.1.0-beta01

2019년 10월 9일

androidx.activity:activity:1.1.0-beta01androidx.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-alpha03androidx.activity:activity-ktx:1.1.0-alpha03이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

새로운 기능

  • 이제 Activity가 Core 1.1.0 공개 버전에 종속됩니다.

버그 수정

버전 1.1.0-alpha02

2019년 8월 7일

androidx.activity:activity:1.1.0-alpha02androidx.activity:activity-ktx:1.1.0-alpha02가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

새로운 기능

  • 이제 SavedStateViewModelFactoryComponentActivity와 함께 by viewModels(), ViewModelProvider 생성자, ViewModelProviders.of()를 사용할 때 사용되는 기본 팩터리입니다. (b/135716331 참조)

버전 1.1.0-alpha01

2019년 7월 2일

androidx.activity:activity:1.1.0-alpha01androidx.activity:activity-ktx:1.1.0-alpha01이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

새로운 기능

  • 이제 activity가 Lifecycle 2.2.0-alpha02에 종속됩니다. (aosp/1007817 참조)
  • activity-ktxlifecycle-runtime-ktx 종속성이 추가되었습니다. 따라서 activity-ktx 또는 activity-ktx에 종속되는 라이브러리(예: fragment-ktx)를 사용할 때 더 이상 종속 항목에 명시적으로 추가할 필요가 없습니다. (aosp/987162 참조)

버전 1.0.0

버전 1.0.0

2019년 9월 5일

androidx.activity:activity:1.0.0androidx.activity:activity-ktx:1.0.0이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

1.0.0의 주요 기능

  • ComponentActivity: ComponentActivityFragment 1.1.0FragmentActivity에 관해 그리고 확장하여 AppCompat 1.1.0AppCompatActivity에 관해 새로운 기본 클래스 역할을 합니다.
  • activity-ktx: activity-ktx 모듈에는 ViewModel에 액세스하기 위한 by viewModels Kotlin 속성 확장을 포함합니다. Fragment 1.1.0fragment-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-rc01androidx.activity:activity-ktx:1.0.0-rc011.0.0-beta01에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

버전 1.0.0-beta01

2019년 6월 5일

androidx.activity::activity:1.0.0-beta01androidx.activity:activity-ktx:1.0.0-beta011.0.0-alpha08에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

버전 1.0.0-alpha08

2019년 5월 7일

androidx.activity:activity:1.0.0-alpha08androidx.activity:activity-ktx:1.0.0-alpha08이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

API 변경사항

  • 브레이킹 체인지: 이전에 지원 중단된 ComponentActivity에 관한 addOnBackPressedCallbackremoveOnBackPressedCallback 메서드를 삭제했습니다. (aosp/953857 참조)
  • 이제 OnBackPressedCallbacksetEnabled()isEnabled() 메서드가 최종입니다. (b/131416833 참조)
  • 이제 OnBackPressedCallbackremove() 메서드가 최종입니다. (aosp/952720 참조)
  • 이제 OnBackPressedDispatcher에 공개 생성자가 있으므로 테스트 등을 위해 자체 인스턴스를 생성할 수 있습니다. (aosp/953431 참조)
  • 이제 ComponentActivityonBackPressed()@MainThread로 명시적으로 표시됩니다. (aosp/952721 참조)

버그 수정

  • LifecycleOwner와 함께 추가된 OnBackPressedCalbackhandleOnBackPressed() 메서드 내에서 remove()를 호출할 때 발생하는 ConcurrentModificationException을 수정했습니다. (b/131765095 참조)

버전 1.0.0-alpha07

2019년 4월 25일

androidx.activity:activity:1.0.0-alpha07androidx.activity:activity-ktx:1.0.0-alpha07이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

API 변경사항

이 릴리스에서는 onBackPressed() 처리에 상당한 변경사항이 있습니다. 자세한 내용은 맞춤형 뒤로 탐색의 업데이트 문서를 참조하세요.

  • OnBackPressedCallbackOnBackPressedDispatcher의 메서드가 @MainThread로 표시되었습니다. (aosp/943813 참조)
  • handleOnBackPressed() 메서드가 더 이상 boolean을 반환하지 않습니다. 대신 OnBackPressedCallback은 이제 추상 클래스이며 사용 설정하거나 사용 중지할 수 있습니다. 새 isEnabled() 메서드가 true를 반환하는 경우에만 handleOnBackPressed()가 호출됩니다. 이 경우 뒤로 버튼을 반드시 처리해야 합니다. (aosp/944518 참조)
  • OnBackPressedDispatcheraddCallback 메서드가 더 이상 Cancellable 인스턴스를 반환하지 않습니다. 이제 OnBackPressedCallback에 이 기능을 처리하는 remove() 메서드가 포함되어 있으므로 handleOnBackPressed() 중에 remove()를 호출할 수 있습니다. (aosp/944519aosp/946316 참조)
  • 이제 activity-ktx에는 handleOnBackPressed()를 구현하고 isEnabledremove()에 액세스할 수 있는 람다를 허용하는 addCallback을 위한 수신기 범위 지정 콜백이 포함되어 있습니다. (aosp/944520 참조)

버전 1.0.0-alpha06

2019년 4월 3일

androidx.activity:activity:1.0.0-alpha06androidx.activity:activity-ktx:1.0.0-alpha06이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

API 변경사항

  • 이제 ComponentActivity에는 @LayoutRes int를 사용하는 두 번째 생성자가 포함되어 있으며 이 생성자는 @ContentView로 AppCompatActivity 클래스에 주석을 다는 이전 동작을 대체합니다. 이 접근 방법은 앱과 라이브러리 모듈 모두에서 적용됩니다. (b/128352521 참조)
  • ComponentActivity의 OnBackPressedCallback 관련 API가 지원 중단되고 getOnBackPressedDispatcher()를 통해 검색 가능한 새 OnBackPressedDispatcher로 대체되었습니다. (aosp/92 2523 참조)
  • OnBackPressedCallbackOnBackPressedDispatcher에 추가하는 메서드가 이제 Cancellable 객체를 반환하므로 OnBackPressedDispatcher를 명시적으로 참조할 필요 없이 콜백을 삭제할 수 있습니다. (aosp/922523 참조)
  • OnBackPressedCallback을 연결된 LifecycleOwner와 함께 추가하면 이제 Lifecycle이 시작되고 중지될 때 OnBackPressedCallback이 추가 및 삭제됩니다. (aosp/922523 참조)

버전 1.0.0-alpha05

2019년 3월 13일

androidx.activity:activity:1.0.0-alpha05androidx.activity:activity-ktx:1.0.0-alpha05가 출시되었습니다. 이 출시에 포함된 커밋의 전체 목록은 여기에서 확인할 수 있습니다.

새로운 기능

  • 이제 @ContentView 주석 조회가 캐시됩니다. (b/123709449 참조)

버전 1.0.0-alpha04

2019년 1월 30일

androidx.activity:activity 1.0.0-alpha04androidx.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에서는 기존 FragmentActivityAppCompatActivity의 새로운 기본 클래스로 ComponentActivity를 도입합니다.

새로운 기능

  • 이제 addOnBackPressedCallback을 통해 OnBackPressedCallback을 등록하여 활동에서 메서드를 재정의하지 않고도 onBackPressed() 콜백을 수신할 수 있습니다.
  • ComponentActivity에서 ViewModel을 검색하기 위한 새 by viewModels() Kotlin 속성 위임을 추가했습니다.
  • 대기 중인 입력 이벤트(예: 클릭)가 이제 onStop()에서 취소됩니다.

API 변경사항

  • LifecycleOwnerViewModelStoreOwner 구현이 FragmentActivity에서 ComponentActivity로 이동했습니다.
  • onRetainCustomNonConfigurationInstance가 지원 중단되었습니다. 구성 변경 이후에도 효력을 유지해야 하는 객체를 저장하려면 ViewModel을 사용하세요.