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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
gyamoto
May 21, 2024
Technology
630
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
860
タクシーアプリ『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
930
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
20260906 「AWS運用入門」著者が教える、運用業務への生成AI活用入門
masaruogura
0
240
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
140
Sony-DroidKaigi2026
sony
1
320
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
120
生成AI時代の クレデンシャルとパーミッション設計
nrinetcom
PRO
4
1.6k
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
150
2026/09/10 Spring_Bootから_Jakarta_EE_MicroProfileへの移行
megascus
0
180
GoにおけるFFIのこれまでとこれから
goccy
1
290
IoTハンズオンの舞台裏
shirouz
2
150
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
260
Autonomous AI Databaseサービス・アップデート(FY27)/ adb-service-update-jp-fy27
oracle4engineer
PRO
0
130
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
840
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Skip the Path - Find Your Career Trail
mkilby
1
220
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
The Language of Interfaces
destraynor
162
27k
How STYLIGHT went responsive
nonsquared
100
6.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
510
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
590
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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 まとめ