概要
Android公式からの引用です。
予測型「戻る」ジェスチャーをサポートするには、下位互換性がある OnBackPressedCallback AppCompat 1.6.0-alpha05(AndroidX)以上の API、または新しい OnBackInvokedCallback プラットフォーム API を使用して、アプリを更新する必要があります。ほとんどのアプリでは、下位互換性のある AndroidX API を使用します。
この更新は、「戻る」ナビゲーションを正しくインターセプトするための移行パスを提供するもので、KeyEvent.KEYCODE_BACK からの「戻る」インターセプトや、onBackPressed メソッドを含むクラス(Activity、Dialog など)を、新しいシステムの「戻る」API で置き換えるためのものです。
実践
onBackPressedを使っていた場合に
OnBackPressed または KeyEvent.KEYCODE_BACKを使って戻る処理をしていた場合に、OnBackPressedDispatcher に移行しましょうということです。
// バックキー押下時の制御
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
getOnBackInvokedDispatcher().registerOnBackInvokedCallback(
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
this::onBackPressed
);
}
Android16以降ならOnBackInvokedCallbackをカスタムして、onBackInvokedDispatcherを登録し、
今まで使用していた、onBackPressedの処理を渡すためにthis::onBackPressedを引数に渡します。
これで予測型「戻る」の対応をしつつ、今までどうりの動きになるようです。
詳しくは公式を見てください。