6 月 3 日の「#Android11: The Beta Launch Show」にぜひご参加ください。

Activity

最新の更新 現在の安定版リリース 次のリリース候補 ベータ版リリース アルファ版リリース
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 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するためのアイデアをお持ちの場合は、お知らせください。新しい問題を報告する前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、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() メソッドの名前が、ここの ComponentActivityFragment 1.3.0-alpha04 の両方で、registerForActivityResult() に変更されました。(aosp/1278717
  • GetContentsOpenDocumentsRequestPermissions コントラクトの名前がそれぞれ GetMultipleContentsOpenMultipleDocumentsRequestMultiplePermissions に変更されました。(aosp/1280161
  • ComponentActivityActivityResultRegisteryOwner インターフェースが実装されました。(aosp/1290888
  • ComponentActivitystartActivityForResult()/onActivityResult() API と onRequestPermissionsResult() API のサポートが終了しました。Activity Result API を使用してください。(b/154751887

バグの修正

  • GetMultipleContents および OpenMultipleDocuments コントラクトを使用している場合に、1 つのアイテムを選択したとき、コールバックに正しく返されるようになりました。(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 に含まれるコミットについては、こちらをご覧ください

新機能

  • TakeVideoPickContactGetContentGetContentsOpenDocumentOpenDocumentsOpenDocumentTreeCreateDocument のコントラクトを ActivityResultContracts が提供する事前ビルド済みのコントラクトのセットに追加しました。(aosp/1262482aosp/1266916aosp/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 を呼び出さずに結果を提供できるようになりました。これは、リクエストされた権限がすでに付与されている場合に、RequestPermission コントラクトと RequestPermissions コントラクトで「許可」ステータスを正しく提供するために使用されます。(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 に含まれるコミットについては、こちらをご覧ください

新機能

  • Lifecycle 2.3.0-alpha01 に追加された ViewTreeLifecycleOwner.get(View) API に対するサポートを追加し、アクティビティに直接追加されたビューの LifecycleOwner としてアクティビティを返すようになりました。(aosp/1182955

バグの修正

  • Activity 1.1.0 で発生する回帰を修正しました。この回帰は、android.app.FragmentManager のバグが原因で onBackPressed() によって IllegalStateException が発生する以前のバージョンのプラットフォームで実行している場合に発生していました。(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 の統合: SavedStateViewModelFactory は、ComponentActivity またはそのサブクラスで by viewModels()ViewModelProvider コンストラクタ、または ViewModelProviders.of() を使用するときのデフォルト ファクトリになりました。

バージョン 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-rc01 がリリースされました。1.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 がリリースされました。このバージョンに含まれるコミットについては、こちらをご覧ください。

新機能

  • SavedStateViewModelFactory は、ComponentActivityby 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: ComponentActivity は、Fragment 1.1.0 では FragmentActivity の新しいベースクラスとして、さらに AppCompat 1.1.0 では拡張機能により AppCompatActivity の新しいベースクラスとして機能します。
  • activity-ktx: activity-ktx モジュールには、ViewModels にアクセスするための by viewModels Kotlin プロパティの拡張機能が含まれています。Fragment 1.1.0 から fragment-ktx を含めると、このモジュールが自動的に含まれます。
  • OnBackPressedDispatcher: onBackPressed() をオーバーライドする代わりに構成可能な手段として、任意の LifecycleOwner(フラグメントなど)から OnBackPressedCallback を登録して、システムの [戻る] ボタンのイベントをインターセプトできるようになりました。レシーバのバージョンが addCallback のラムダが activity-ktx に追加されました。詳細については、「戻る」カスタム ナビゲーションの提供に関するドキュメントをご覧ください。
  • onRetainCustomNonConfigurationInstance のサポート終了: onRetainCustomNonConfigurationInstance() と、関連する getLastCustomNonConfigurationInstance() API のサポートが終了しました。非構成状態の保存には ViewModels を使用することを強くおすすめします。ViewModelStoreOwner に適した構成可能なソリューションが提供されるので、保持されるオブジェクトの所有権が明確になり、アクティビティが最終的に破棄されるときにリソースをクリーンアップする onCleared() コールバックが提供されます。

バージョン 1.0.0-rc01

2019 年 7 月 2 日

androidx.activity:activity:1.0.0-rc01androidx.activity:activity-ktx:1.0.0-rc01 がリリースされました。1.0.0-beta01 からの変更はありません。このバージョンに含まれるコミットについては、こちらをご覧ください。

バージョン 1.0.0-beta01

2019 年 6 月 5 日

androidx.activity::activity:1.0.0-beta01androidx.activity:activity-ktx:1.0.0-beta01 がリリースされました。1.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 の変更

  • 互換性を破る変更: すでにサポートが終了していた ComponentActivityaddOnBackPressedCallback メソッドと removeOnBackPressedCallback メソッドが削除されました(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 インスタンスを返さなくなりました。この機能を実現する remove() メソッドが OnBackPressedCallback に追加され、handleOnBackPressed()remove() を呼び出せるようになりました(aosp/944519)(aosp/946316
  • handleOnBackPressed() を実装し isEnabledremove() にアクセスできるラムダを受け取る、addCallback のレシーバ スコープ コールバックが activity-ktx に追加されました(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 を受け取る 2 つ目のコンストラクタが追加されました。このコンストラクタは、AppCompatActivity クラスをアノテーションする以前の動作を @ContentView で置き換えます。この方法は、アプリとライブラリの両方のモジュールで機能します(b/128352521
  • getOnBackPressedDispatcher() を介して取得できる新しい OnBackPressedDispatcher を優先して、ComponentActivity の OnBackPressedCallback 関連 API のサポートが終了しました(aosp/922523
  • 新しい OnBackPressedCallbackOnBackPressedDispatcher に追加するメソッドが Cancellable オブジェクトを返すようになり、OnBackPressedDispatcher への明示的な参照を必要とせずに、コールバックを削除できるようになりました(aosp/922523
  • LifecycleOwner に関連付けて OnBackPressedCallback を追加すると、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-ktx モジュールの依存関係と一致するように、activity モジュールが 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 を使用してください。