Androidアプリ開発

Android14対応
(非推奨のonBackPressedの対応)

この記事は約7分で読めます。
記事内に広告が含まれています。
スポンサーリンク

この記事は Androidスマホ用のアプリ開発の中で、
今後の開発で再使用性が高いと思われるコーディングをまとめたものです。
Java での開発経験、XML構文規則、Android のアプリ開発経験がある方を対象としています。
Android のアプリ開発でお役にたててれば、嬉しいです。
(これから Android のアプリ開発や Java での開発を始めたい方への案内は、
記事の最後で紹介します)

この記事のテーマ


Android14で使用不可になった onBackPressed に対応する

あと味すっきり、フレーバーウォーターがおススメです♪

ポイント

これまでBackキー(戻るボタン)の処理は、onBackPressed をオーバライドして記述していました。
onBackPressed は Android 13 から非推奨、Android 14 から使用不可になりました。
これは、Android 13 から導入された予測型「戻る」ジェスチャーに関係があります。
今回は、Android 14 での戻るボタンの実装について、紹介いたします。

予測型「戻る」ジェスチャーのサポートを追加する

Backキー(戻るボタン)の実装

AndroidX の「戻る」ナビゲーションの実装に変更します。
これは、
OnBackPressedDispatcher よってカスタム ジェスチャー ナビゲーションを処理します。

適切な「戻る」ナビゲーションを提供する

Android 12 までのBackキー(戻るボタン)の実装

Backキー(戻るボタン)の処理は、onBackPressed をオーバライドして処理を記述します。
サンプルでは Backキーがタップされたら、MainActivity に画面遷移しています。

    …
    @Override
    public void onBackPressed() {
        Intent intent = new Intent(context, MainActivity.class);
        startActivity(intent);
        overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
        finish();
    }
    …

Android 13 以降のBackキー(戻るボタン)の実装

Amdroid13以降では、OnBackPressedDispatcher に onBackPressed のコールバックを追加します。
handleOnBackPressed をオーバライドして処理を記述します。
サンプルでは Backキーがタップされたら、MainActivity に画面遷移しています。

import androidx.activity.OnBackPressedCallback;
    …
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        …
        getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) {
            @Override
            public void handleOnBackPressed() {
                Intent intent = new Intent(context, MainActivity.class);
                startActivity(intent);
                overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
                finish();
            }
        });
        …

今回は、ここまでです。

非推奨のonBackPressedに対応している Androidアプリです。
Backキー(戻るボタン)のタップでアプリを再起動しています。

誤字脱字、意味不明でわかりづらい、
もっと詳しく知りたいなどのご意見は、
このページの最後にある
コメントか、
こちらから、お願いいたします♪

ポチッとして頂けると、
次のコンテンツを作成する励みになります♪

ブログランキング・にほんブログ村へ

これからAndroidのアプリ開発やJavaでの開発を始めたい方へ

アプリケーション開発経験がない方や、アプリケーション開発経験がある方でも、JavaやC#などのオブジェクト指向言語が初めての方は、Androidのアプリ開発ができるようになるには、かなりの時間がかかります。
オンラインスクールでの習得を、強くおススメします。

未経験者からプログラマーを目指すのに最適です。まずは無料カウンセリングから♪

ゲーム系に強いスクール、UnityやUnrealEngineを習得するのに最適です。まずは無料オンライン相談から♪

参考になったら、💛をポッチとしてね♪

スポンサーリンク
シェアする
msakiをフォローする
スポンサーリンク

コメント欄

タイトルとURLをコピーしました