Slide 1

Slide 1 text

The Guide to Predictive Back @maxfie1d Android Engineer, Recruit 1

Slide 2

Slide 2 text

Speaker いしだ なおと 石田 直人 (@maxfie1d) Android Engineer, Recruit 2

Slide 3

Slide 3 text

Agenda | 01 02 03 04 Android の「戻る」の歴史 Android 13 における Predictive Back Android 14 における Predictive Back デモ 3

Slide 4

Slide 4 text

Android の「戻る」の歴史 01 4

Slide 5

Slide 5 text

戻るボタン (ハードウェア) 戻るボタン (ソフトウェア) 戻るジェスチャ Predictive Back New! 5 from Android 1.0 from Android 4.0 from Android 10 from Android 13+

Slide 6

Slide 6 text

Predictive Back ユーザーは「戻る」ジェスチャーによる移動先やそ の他の結果を完了前にプレビューできるため、現 在のビューで操作を続行するかそのまま留まる かを決定できるようになります。 6

Slide 7

Slide 7 text

Android 13 における Predictive Back 02 7

Slide 8

Slide 8 text

Android 13 の Predictive Back ● Activity から Home 画面のみ ● カスタマイズは不可 8

Slide 9

Slide 9 text

Android 14 における Predictive Back 03 9

Slide 10

Slide 10 text

Android 14 の Predictive Back ● 対応範囲: ○ Activity から Home 画面 ○ Activity から Activity New! ○ アプリ内 New! ● カスタマイズ可能 New! ● その他: Material 3, Fragment が対応予定 10

Slide 11

Slide 11 text

https://m3.material.io/ Bottom sheets Search Slide sheets 11

Slide 12

Slide 12 text

デモ 04 12 ⚠ 2023/6/7 リリースの activity:1.8.0-alpha05 で作成しています。 API は将来的に変更になる可能性があります。

Slide 13

Slide 13 text

1. AndroidManifest に android:enableOnBackInvokedCallback=”true” を 追加する https://developer.android.com/guide/navigation/predictive-back-gesture?hl=ja 13

Slide 14

Slide 14 text

2. OnBackPressedCallback に追加された handleOnBackProgressed を 実装する https://developer.android.com/about/versions/14/features/predictive-back 14

Slide 15

Slide 15 text

15 https://github.com/maxfie1d/predictive-back-sample

Slide 16

Slide 16 text

Resources ● https://www.youtube.com/watch?v=Elpqr5xpLxQ ● https://developer.android.com/guide/navigation/predictive-back-gesture?hl=ja ● https://developer.android.com/about/versions/14/features/predictive-back ● https://developer.android.com/design/ui/mobile/guides/patterns/predictive-back ● https://developer.android.com/jetpack/androidx/releases/fragment#1.7.0-alpha01 ● https://developer.android.com/jetpack/androidx/releases/activity#1.8.0-alpha05 ● https://m3.material.io/ 16

Slide 17

Slide 17 text

Thank you! @maxfie1d Android Engineer, Recruit 17