こんにちは、KNSKです。
よろしくお願いします。
以前、こちらの記事で予測型「戻る」ジェスチャーについてご紹介しました。
今年リリースされるAndroid16において機能の更新がありましたので、今回も開発者目線でご紹介します。
※ 下記の内容は Google Pixel 7a(Android 16 Beta 4)を使用して動作確認しました。
3ボタンナビゲーションのサポート
以前調査した時点では 予測型「戻る」ジェスチャーという名称の通り、ジェスチャーナビゲーションでしか使用できない機能でした。
Android16では 3ボタンナビゲーションを選択している場合でも予測型「戻る」を使用できるようになります。
「戻る」ボタンをタッチしている間は遷移予測が表示され、指を離すと実際に遷移します。
タッチしたまま指を「戻る」ボタンから外すと遷移がキャンセルされます。
デフォルトで有効化
Android16をターゲットとするアプリケーションは予測型「戻る」がデフォルトで有効になります。
現時点ではオプトアウト(無効化)することも可能ですが、
将来的にオプトアウトできなくなる恐れもあるためアプリ開発者は早めに対応しておく必要があります。
なお、デバイスの開発者向けオプション『予測型「戻る」アニメーション』はAndroid 15で削除されました。
ナビゲーションに影響しないイベントハンドリング
アニメーションや画面遷移を阻害せずに「戻る」イベントをハンドリングするための定数PRIORITY_SYSTEM_NAVIGATION_OBSERVERがAndroid16(APIレベル36)で追加されました。
画面遷移が発生するためUI表示やユーザー操作を伴う処理には使用できませんが、ログ出力やデータ保存等の用途に適しています。
onBackInvokedDispatcher.registerOnBackInvokedCallback(OnBackInvokedDispatcher.PRIORITY_SYSTEM_NAVIGATION_OBSERVER) {
// ログ出力等
}
ナビゲーションがトリガーする処理を制御可能に
Android16(APIレベル36)で下記のAPIが追加されました。
これらを使用すると「戻る」ナビゲーションが実行されたときのアプリの挙動を制御できるようになります。
タスク削除 – finishAndRemoveTaskCallback()
ルートアクティビティで使用するとタスク全体が削除され、最近のタスクにも表示されなくなります。
ルートアクティビティ以外で使用した場合は通常の「戻る」ナビゲーションと同じ挙動となります。
バックグラウンドへ移動 – moveTaskToBackCallback()
アクティビティを含むタスクがバックグラウンドに移動します。
つまり、「ホーム」ナビゲーションと同じ挙動となります。
最後に
例年は新OSは秋ごろにリリースされていましたが、Android16は第2四半期にリリースされる予定です。
毎年、新OSの発表に合わせて公開中のアプリの動作確認や修正を実施していますが、
OSのリリース時期が早まったことによりスケジュールに多少の影響が出ました。
常日頃の情報収集が重要であることを改めて認識しました。
また、3ボタンナビゲーションに対するサポートが継続していることが確認でき、
3ボタンナビゲーション愛用者としてはとても安心しました。
参考
関連記事
-
第1回 Visual C++で作成したDLL内のクラスをC#で利用する方法
こんにちは、ILCです。 Visual C++ (以下 VC++)で作成されたDynamic...
公開日:2024.01.19 更新日:2024.01.19
tag : Windows
-
-
-
第1回 ラズパイを使用したBLE通信 ~ ディスプレイ、キーボード、マウスを接続しないで設定 前編 ~
こんにちは、GTです。よろしくお願いします。 最近業務でラズパイのBluetooth機能を使...
公開日:2021.12.24 更新日:2021.12.24
tag : Bluetooth Raspberry Pi
-
【新機能探訪】Android 13から導入された『アプリごとの言語設定』
こんにちは、KNSKです。よろしくお願いします。 今回は Android13の新機能である『...
公開日:2022.12.09 更新日:2022.12.09
tag : スマートデバイス
-
こんにちは。WwWです。 システム系の開発をしていると様々な問題が起こります。 そこで今回は...
公開日:2023.04.28 更新日:2023.04.28