Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Jetpack Compose と Accompanist
Search
Mikami Hiroki
November 29, 2022
360
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Jetpack Compose と Accompanist
Mikami Hiroki
November 29, 2022
More Decks by Mikami Hiroki
See All by Mikami Hiroki
KMPの今と未来
monaapk
0
620
Accompanistから考えるAndroidの権限許諾
monaapk
0
470
AndroidにおけるWebの進化
monaapk
1
320
FlutterとAndroidの 連携を変えるかもしれないjni
monaapk
1
640
DroidKaigi 2022のカンファレンスアプリを眺める
monaapk
2
1.2k
Circuit⚡
monaapk
0
430
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
How to Ace a Technical Interview
jacobian
280
24k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
How to build a perfect <img>
jonoalderson
1
6.1k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
570
Designing for Performance
lara
612
70k
ラッコキーワード サービス紹介資料
rakko
1
5.3M
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
<< Jetpack Compose と Accompanist
• Twitter: @mono33__ • 興味: Compose / ビルド周り • 株式会社ゆめみ
みかみ/403
Accompanist について紹介します! (コード・技術的なお話は 別途 Zenn をご確認ください)
アジェンダ • Jetpack Compose と Accompanist について • Accompanist を使ってみる
• Accompanist を使ってみた感想
Jetpack Compose と Accompanist について
Jetpack Compose • 宣言型アプローチの最新 UI ツールキット • 2021年7月に 1.0.0 に安定版がリリースされ
漸次アップデート [1] Jetpack Compose is now 1.0: announcing Android’s modern toolkit for building native UI, https://android-developers.googleblog.com/2021/07/jetpack-compose-announcement.html
Jetpack Compose の Roadmap [2] Jetpack Compose Roadmap, https://developer.android.com/jetpack/androidx/compose-roadmap •
Roadmap が公開されている https://android-developers.googleblog.com/2021/07/jetpack-compose-announcement.html
• AndroidX 間で experimental api を呼び出す ことができない Jetpack Compose の開発における問題
androidx.compose:foundation androidx.compose:material @ExperimentalMaterialApi [3] Jetpack Compose Accompanist — An FAQ., https://medium.com/androiddevelopers/jetpack-compose-accompanist-an-faq-b55117b02712
• AndroidX 間で experimental api を呼び出す ことができない Jetpack Compose の開発における問題
androidx.compose:foundation androidx.compose:material @ExperimentalMaterialApi 新しい機能の追加が行いにくい!
Accompanist • AndroidX ではサポートされていない Jetpack Compose の機能を補 完することを目的としたライブラリのコレクション [4] Accompanist,
https://github.com/google/accompanist https://github.com/google/accompanist/blob/main/docs/header.png
Accompanist の背景・目的 • Compose の開発初期から AndroidX とは独立して Github 上で開発 ◦
最初は Coil のラッパーライブラリだった ◦ AndroidX の experimental api を利用できる ◦ 実験的な機能を追加しやすい • Accompanist はその機能が AndroidX 側に実装が移行され Accompanist が存在しなくなることが目的 [3] Jetpack Compose Accompanist — An FAQ., https://medium.com/androiddevelopers/jetpack-compose-accompanist-an-faq-b55117b02712
Accompanist を使ってみる
Accompanist は使えるのか...? • Compose を利用しているプロジェクトの 30 % 弱以上が Accompanist を使用している[3]
[3] Jetpack Compose Accompanist — An FAQ., https://medium.com/androiddevelopers/jetpack-compose-accompanist-an-faq-b55117b02712
• Compose のバージョンに応じて Accompanist の バージョンを指定 Accompanist のバージョン https://github.com/google/accompanist#compose-versions
• Github にライブラリ一覧と使用例が記載 使いたいライブラリを探す
• 何かと扱いにくい ModalBottomSheet を Compose で扱うライブラリ • 「Jetpack Compose と
Accompanist で ModalBottomSheet を実装する」と いうZenn を書きました📝 Navigation Material for Jetpack Compose [5] Jetpack ComposeとAccompanistでModalBottomSheetを実装する ,https://zenn.dev/mona/articles/b7db89481a0461
• Compose で Runtime Permission を よしなに扱えるライブラリ • 「Jetpack Compose
でアプリ・デバイスの 位置情報権限を扱う方法を考える」という Zenn を書きました📝 Permissions for Jetpack Compose [6] Jetpack Composeでアプリ・デバイスの位置情報権限を扱う方法を考える ,https://zenn.dev/mona/articles/b49ba42ae4a4ea
Accompanist を使ってみた感想
感想 • プロダクトでも Accompanist をどんどん使っていけそう ◦ 結構色々なことがサポートされている ◦ 実装が変更されることはあるので注意 •
Accompanist は内部実装も勉強になる • Accompanist に Contribute もできそう 余力があれば...
CREDITS: This presentation template was created by Slidesgo, including icons
by Flaticon, infographics & images by Freepik. Thanks!
References • Jetpack Compose is now 1.0: announcing Android’s modern
toolkit for building native UI, https://android-developers.googleblog.com/2021/07/jetpack-compose-announcement.html • Jetpack Compose Roadmap, https://developer.android.com/jetpack/androidx/compose-roadmap • Jetpack Compose Accompanist — An FAQ., https://medium.com/androiddevelopers/jetpack-compose-accompanist-an-faq-b55117b02712 • Accompanist, https://github.com/google/accompanist • Jetpack Compose と AccompanistでModalBottomSheetを実装する ,https://zenn.dev/mona/articles/b7db89481a0461 • Jetpack Compose でアプリ・デバイスの位置情報権限を扱う方法を考える ,https://zenn.dev/mona/articles/b49ba42ae4a4ea