Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
脱Accompanistを考える / Bye Accompanist
Search
gyamoto
May 21, 2024
Technology
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
脱Accompanistを考える / Bye Accompanist
gyamoto
May 21, 2024
More Decks by gyamoto
See All by gyamoto
実践 脱Modifier.composed / Let's Modifier.Node
gya
2
850
タクシーアプリ『GO』Androidのリリースフロー / Release GO App
gya
1
1.5k
私の好きなModifier関数 / My Favorite Modifier
gya
0
1.2k
2022年ヘルスケアアプリのつくり方 / 2022 A Healthcare App Odyssey
gya
0
1.6k
タクシーアプリ「GO」AndroidにできるところからJetpack Composeを入れている話 / Introduce Jetpack Compose gradually
gya
0
920
Gradle BOM importでライブラリバージョン管理 / DroidKaigi2019
gya
3
2.4k
Firebaseで解決するAndroidの機種依存 / Firebase solve android device difference
gya
2
1.4k
Other Decks in Technology
See All in Technology
Building applications in the Gemini API family.
line_developers_tw
PRO
0
2.8k
RSA暗号を手計算したくなること、ありますよね?? (20260615_orestudy6_rsa)
thousanda
0
170
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.9k
日本 Fintech 未来予測レポート 2027〜2028年(手動編集版)
8maki
0
1.4k
「エンジニア進化論」2028年の開発完全自動化、エンジニアはどう進化するか
cyberagentdevelopers
PRO
4
4.3k
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
2
1.6k
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
700
2026TECHFRESH畢業分享會 - Lightning Talk - E起 See See : 電商推薦讀心術? 數據說了算
line_developers_tw
PRO
0
690
失敗を経て、Harness Engineering で 大切にしたいことを考える / Learning from Failure: What Matters in Harness Engineering
bitkey
PRO
1
290
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
230
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
エンジニアリング戦略の作り方 / Crafting Engineering Strategy
iwashi86
19
6.4k
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
107
250k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
150
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
320
Typedesign – Prime Four
hannesfritz
42
3.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
180
A Tale of Four Properties
chriscoyier
163
24k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Building the Perfect Custom Keyboard
takai
2
790
Transcript
© GO Inc. 脱Accompanistを考える 2024.05.21 / Mobile勉強会 Wantedly × チームラボ
× Sansan #14 YAMAMOTO Kohei GO株式会社
© GO Inc. 2 自己紹介 GO株式会社 ユーザーシステム開発部 /YAMAMOTO Kohei タクシーアプリ『GO』のAndroidアプリ開発を担当。
梅雨の前に温泉に行きたい。 @farundorl @gyamoto
© GO Inc. Jetpack Composeを補完するライブラリ群 まだ Compose API で利用できないが、開発者が求める一般的な機能を試験的に導入。 Android
View (Activity, Fragment, View) や Material Components の機能やUIを Jetpack Compose で実現できるようになる Compose API に反映された時点で非推奨となり Accompanist から削除される 3 Accompanistとは https://google.github.io/accompanist
© GO Inc. - 📫 Permissions - 🖌 Drawable Painter
- 📜 Adaptive - ⬇ Swipe to Refresh - 🎨 AppCompat Theme Adapter - 📖 Pager - 🌊 Flow Layouts - 🧭✨Navigation-Animation - 🧭🎨 Navigation-Material - ⏳ Placeholder - 🍫 System UI Controller - 🎨 AppCompat Theme Adapter - 🎨 Material Theme Adapter - 🎨 Material 3 Theme Adapter - 🌏 Web - 🗜 Test Harness - 📐 Insets 4 Accompanistライブラリ群
© GO Inc. - タクシーアプリ『GO』で使っている Accompanist のライブラリ - ⏳ Placeholder
- 🖌 Drawable Painter - 📖 Pager - 🎨 Material Theme Adapter - 個人的に使っている Accompanist のライブラリ - 📫 Permissions - 📖 Pager - 🍫 System UI Controller - 🌏 Web - 📐 Insets 5 使用中のAccompanistライブラリ
© GO Inc. - 📫 Permissions - 🖌 Drawable Painter
- 📜 Adaptive - ⬇ Swipe to Refresh (Deprecated) - 🎨 AppCompat Theme Adapter (Deprecated) - 📖 Pager (Deprecated) - 🌊 Flow Layouts (Deprecated) - 🧭✨Navigation-Animation (Deprecated) - 🧭🎨 Navigation-Material (Deprecated) - ⏳ Placeholder (Deprecated) - 🍫 System UI Controller (Deprecated) - 🎨 AppCompat Theme Adapter (Deprecated) - 🎨 Material Theme Adapter (Deprecated) - 🎨 Material 3 Theme Adapter (Deprecated) - 🌏 Web (Deprecated) - 🗜 Test Harness (Deprecated) - 📐 Insets (Deprecated & Removed) 6 Accompanistライブラリ群(非推奨)
© GO Inc. Accompanistライブラリが非推奨になりメンテナンスが止まっている。 引き続き Jetpack Compose を最新化するために移行せねば… 7 脱Accompanistを考える
© GO Inc. 脱Accompanistのために、各ライブラリの移行ガイドを確認する 8 脱Accompanistを考える
© GO Inc. 読込中アニメーションを表示するライブラリ 非推奨になりメンテナンス停止中 9 ⏳ Placeholder (Deprecated) https://google.github.io/accompanist/placeholder/
© GO Inc. Compose API には未反映 実装をフォークするか、表示方法を変更するか… コード量も多くはないので、実装フォークでよさそう 10 ⏳
Placeholder (Deprecated) https://github.com/google/accompanist/tree/main/placeholder-material/src/main/java/com/google/accompanist/placeholder/material
© GO Inc. Edge-to-edge を実装するために System bar の色やアイコンを指定するライブラリ 非推奨になりメンテナンス停止中 11
🍫 System UI Controller (Deprecated) https://google.github.io/accompanist/systemuicontroller/#migration
© GO Inc. androidx.activity 1.8.0-alpha03~ から追加された Activity.enableEdgeToEdge に移行する 移行サンプルとして android/nowinandroid
リポジトリのPullRequestを参考にできる 12 🍫 System UI Controller (Deprecated) https://google.github.io/accompanist/systemuicontroller/#migration https://github.com/android/nowinandroid/pull/817
© GO Inc. ViewPager ライブラリ androidx.compose で正式サポートとなり、非推奨になった https://google.github.io/accompanist/pager/#migration 13 📖
Pager (Deprecated) https://google.github.io/accompanist/pager/#migration
© GO Inc. パッケージ名の置き換えが必要 他にもパラメータの指定方法が少し変わったり、細かな変更がある 14 📖 Pager (Deprecated)
© GO Inc. 詳細は Migration Table 参照 https://google.github.io/accompanist/pager/#migration 15 📖
Pager (Deprecated)
© GO Inc. まだ非推奨じゃないので大丈夫!! 16 📫 Permissions https://google.github.io/accompanist/permissions/
© GO Inc. WebViewライブラリ 非推奨になりメンテナンス停止中 17 🌏 Web (Deprecated) https://google.github.io/accompanist/web/
© GO Inc. Compose API には未反映 実装をフォークするか、相互運用APIでCompose内にAndroid View の WebView
を表示する? 実装量も膨大ではないので、シンプルなWebView表示であれば実装フォークでよさそう 18 🌏 Web (Deprecated) https://github.com/google/accompanist/blob/f27f3ec/web/src/main/java/com/google/accompanist/web/WebView.kt
© GO Inc. 余白を差し込むライブラリ 非推奨になりメンテナンス停止中 19 📐 Insets (Deprecated &
Removed) https://google.github.io/accompanist/insets/#migration
© GO Inc. androidx.compose で正式サポートとなり、非推奨になった Activity から WindowCompat.setDecorFitsSystemWindows(window, false) 設定が必要
まだ非推奨になってない insets-ui ライブラリは利用可能。まだ… 20 📐 Insets (Deprecated & Removed)
© GO Inc. Accompanist は非推奨になる マイグレーションガイドを参考に移行を進める必要がある パッケージ名やクラス名の変更程度で済む場合もある Compose API に反映されない場合、
別の実装アプローチへの移行、実装のフォーク、相互運用APIなどの検討が必要になる 21 まとめ