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
Jetpack Composeでアプリを開発して遭遇した問題
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Nabe
February 22, 2022
Programming
760
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Jetpack Composeでアプリを開発して遭遇した問題
2022/02/22
Mobile勉強会 Wantedly × チームラボ #4
https://connpass.com/event/237606/
Nabe
February 22, 2022
More Decks by Nabe
See All by Nabe
カクヨムAndroidアプリのリブート
numeroanddev
0
650
GraphicsLayerのBitmap作成
numeroanddev
0
240
GraphQLとGigaViewer for Apps
numeroanddev
4
4.6k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
780
Material 3で Material 2ぽい見た目にする
numeroanddev
2
670
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
500
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
590
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
1k
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.6k
Other Decks in Programming
See All in Programming
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
610
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.7k
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
560
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
570
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
610
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
740
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
300
AIで効率化できた業務・日常
ochtum
0
140
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
320
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
7k
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Into the Great Unknown - MozCon
thekraken
41
2.6k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
230
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
140
Leo the Paperboy
mayatellez
7
1.9k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
400
The Language of Interfaces
destraynor
162
27k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
170
The Cult of Friendly URLs
andyhume
79
6.9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Transcript
.PCJMFษڧձ8BOUFEMZYνʔϜϥϘ ,B[VLJ8BUBOBCF +FUQBDL$PNQPTFͰΞϓϦΛ ։ൃͯ͠ૺ۰ͨ͠
1SPGJMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w גࣜձࣾͯͳ w
"OESPJEJ04BQQMJDBUJPOFOHJOFFS
'VMM+FUQBDL$PNQPTFͰ։ൃͨ͠ΞϓϦ ΛࡢϦϦʔε͠·ͨ͠
IUUQTIBUFOBDPSQKQQSFTTSFMFBTFFOUSZ
IUUQTEFWFMPQFSIBUFOBTUB ff DPNFOUSZ
ࠓ͢͜ͱ w +FUQBDL$PNQPTFͰΞϓϦΛ։ൃͯ͠ૺ۰ͨ͠ͱͲ͏ରॲͨ͠ͷ͔ w ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼ w ด͡ΒΕͳ͍%SPQEPXO.FOV w άϦου͔͠දࣔͰ͖ͳ͍-B[Z(SJE w
ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS
ϨΠΞταΠζऔಘͰύϑΥʔϚϯε Լٙ
ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼٙ ֓ཁ w "OESPJE7JFXͰϨΠΞτͷαΠζΛऔΖ͏ͱ͢Δͱ 0O(MPCBM-BZPVU-JTUFOFSͷλΠϛϯάͰऔΔͱ͍͏ํ๏͕͋Δ w $PNQPTFͰ.PEJ fi FSPO4J[F$IBOHFEͰಉ͡Α͏ͳ͜ͱ͕Ͱ͖Δ w
"OESPJE7JFXͱಉ͡Α͏ͳ࣮Λ͢ΔͱඞཁҎ্ʹ3FDPNQPTF͞ΕΔΑ ͏ʹͳͬͨ w ʹݟ͑ͯύϑΥʔϚϯε͕མ͍ͪͯͨΘ͚Ͱͳ͍
ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼٙ ֓ཁ
ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼٙ ݪҼ w $PNQPTJUJPOˠ-BZPVUˠ%SBXJOHͱ͍ͬͨྲྀΕͰ$PNQPTFϨΠΞτ ͞ΕΔ w .PEJ fi FSPO4J[F$IBOHFEͰΛड͚औΔͷ-BZPVUͷλΠϛϯάͰɺड ͚औͬͨΛผͷ$PNQPTBCMFʹ͢ͱ%SBXJOH͕͞Εͨޙʹ
3FDPNQPTF͞Εͯ$PNQPTJUJPO͔Β࠶ϨΠΞτ͞ΕΔ w ͜Ε͕ෳͷՕॴͰ࣮͞Ε͍ͯͨΓར༻͞Ε͍ͯΔͱύϑΥʔϚϯεͷ Լʹͭͳ͕Δ
ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼٙ ରॲ w ࣗϨΠΞτͷαΠζΛऔΔ͚ͩͳΒ#PY8JUI$POTUSBJOUΛ͏ w ϨΠΞτͷαΠζ͕ඞཁʹͳΔෳࡶͳϨΠΞτͷ߹ΧελϜϨΠΞ τΛ࡞Δ
ด͡ΒΕͳ͍%SPQEPXO.FOV
ด͡ΒΕͳ͍%SPQEPXO.FOV ֓ཁ w -JHIU5IFNF%BSL5IFNFͷΓସ͑Λ%SPQEPXO.FOVͷ $PNQPTBCMFΛ࣮ͬͯͨ͠ w ςʔϚ͕ΓସΘΔͱ%SPQEPXO.FOV͕Γଓ͚ͨ
ด͡ΒΕͳ͍%SPQEPXO.FOV ֓ཁ
ด͡ΒΕͳ͍%SPQEPXO.FOV ݪҼ w $PNQPTFͷ%SPQEPXO.FOV෦Ͱ8JOEPXʹ7JFXΛஔ͍ͯද͍ࣔͤͯ͞Δ w %SPQEPXO.FOV͕ด͡ΒΕΔ࣌8JOEPX͔Β7JFXΛऔΓআ͘ॲཧΛݺΜͰ͍ Δ w ͜͜ͰςʔϚΓସ͑࣌ʹSFDSFBUF͕෦ͰߦΘΕΔ w
8JOEPX͔Β7JFXΛऔΓআ͘ॲཧ͕ऴΘΔલʹSFDSFBUF͕ߦΘΕͯ %SPQEPXO.FOV͕ͬͯ͠·͏ w %SPQEPXO.FOVͷঢ়ଶͰ͋ΔFYQBOEFEGBMTF͕ͩ෦ॲཧ໋͕ྩతͰ͋Δ ͨΊζϨ͕ى͖Δ
ด͡ΒΕͳ͍%SPQEPXO.FOV ରॲ w ςʔϚΓସ͑ͷॲཧͷલʹEFMBZΛೖΕͯ%SPQEPXO.FOV͕ด͡ΒΕͯ ͍ΔͰ͋Ζ͏λΠϛϯάͰSFDSFBUF͕ߦΘΕΔΑ͏λΠϛϯάΛΒͤ·͠ ͨ
άϦου͔͠දࣔͰ͖ͳ͍-B[Z(SJE
άϦου͔͠දࣔͰ͖ͳ͍-B[Z(SJE ରॲ w -B[Z7FSUJDBM(SJE-B[Z)PSJ[POUBM(SJEͰΞΠςϜͷ4QBO͕ઃఆͰ͖ͳ ͍ w άϦουͷؒʹԣ෯͍ͬͺ͍ͷηΫγϣϯΛදࣔͰ͖ͳ͍
άϦου͔͠දࣔͰ͖ͳ͍-B[Z(SJE ରॲ w -B[Z$PMVNO-B[Z3PXͷΞΠςϜͷϨΠΞτΛͯ͠ηΫγϣϯͱά ϦουΛࠞͥͯදࣔͰ͖ΔΑ͏ʹͨ͠ w BMQIBͰ(SJE4QBO*UFN͕Ճ͞Εͯ4QBOͷઃఆ͕Ͱ͖ΔΑ͏ʹ ͳͬͨ w BMQIB࣌ͰࢥͬͨΑ͏ʹ4QBOͷڍಈ͕ಈ͍ͯ͘Εͳ͍ͷͰࠓޙʹ
ظ
ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS
ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS ֓ཁ w "DDPNQBOJTU1BHFSͰ෦࣮͕ΧελϜϨΠΞτ͔Β -B[Z$PMVNO-B[Z3PXʹมΘͬͨ w ͦͷӨڹͰ"1*େ͖͘มΘͬͨ w P ff
TFUɺFOBCMF%SBHɺແݶϧʔϓͷ"1*আ w Ҡߦޙͷແݶϧʔϓ1BHFSͷ࣮Ͱ5BCͷΠϯδέʔλͷ࿈ܞ͕Ͱ͖ͳ ͍
ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS ରॲ w P ff TFUͷΛݩʑେ͖͘ઃఆ͍ͯͨ͠Θ͚Ͱͳ͍ͷͰɺ-B[ZܥͷڍಈͰେ͖ͳ͕ࠩͳ͔ͬͨ w FOBCMF%SBHͷΘΓʹ-B[ZܥͷεΫϩʔϧྔΛʹ͢Δ.PEJ fi FSΛ࣮ͯͦ͠ΕΛར༻ͨ͠
w Ͱ-B[ZܥʹVTFS4DSPMM&OBCMFEͷΦϓγϣϯ͕૿͑ͨͷͰ͜Ε͕1BHFSͰ͑Δ Α͏ʹͳΔ͔
ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS ରॲ w ແݶϧʔϓ1BHFSͷαϯϓϧίʔυΛࢀߟʹ࣮ w 5BCͷΠϯδέʔλΛແݶϧʔϓͰ͑ΔΑ͏ʹίʔυΛ࣮ w ͦ͏͢ΔͱΠϯδέʔλͷΞχϝʔγϣϯ͕͑ͳ͍͕ग़ͯ͘ΔͷͰ࣍ͷ ͲͪΒ͔Ͱճආ͢Δඞཁ͕͋ͬͨ w
ແݶϧʔϓΛΊͯ5BCͷΠϯδέʔλͷΞχϝʔγϣϯΛ͢ w 5BCͷΠϯδέʔλͷΞχϝʔγϣϯΛఘΊͯແݶϧʔϓΛ͢ w νʔϜͰ͠߹ͬͯޙऀͰҠߦΛਐΊͨ
·ͱΊ w ৽͍ٕ͠ज़ͱ͍͏͜ͱ͋Γɺෆ͍ͯ͠Δػೳେ͖ͳ"1*ͷมߋΑ͘ ͋ͬͨ w ৭ʑʹૺ۰ͨ͠ͷͷ+FUQBDL$PNQPTFΛ༻͍ͨ։ൃշద w +FUQBDL$PNQPTFͷॊೈͳ"1*ͱએݴత6*ͱ͍͏ঢ়ଶཧ͔Βͷղ์
એ w ͯͳͰJ04"OESPJEΞϓϦΤϯδχΞΛ࠾༻͍ͯ͠·͢ʂ w ΧδϡΞϧͳ໘ஊͰ͖ΔͷͰͥͻؾܰʹ͓͕͚͍ͩ͘͞ʂ https://open.talentio.com/r/1/c/hatena/pages/28838
ࢀߟ w ϨΠΞταΠζऔಘͰύϑΥʔϚϯεԼٙ w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTFQIBTFTSFDPNQ MPPQ w άϦου͔͠දࣔͰ͖ͳ͍-B[Z(SJE w IUUQTBOESPJESFWJFXHPPHMFTPVSDFDPNDQMBUGPSNGSBNFXPSLT
TVQQPSU w ߋ৽Ͱ͖ͳ͍"DDPNQBOJTU1BHFS w IUUQTHJUIVCDPNHPPHMFBDDPNQBOJTU w IUUQTBOESPJESFWJFXHPPHMFTPVSDFDPNDQMBUGPSNGSBNFXPSLT TVQQPSU
5IBOLZPV