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
Famm Android改善記
Search
akatsuki174
March 22, 2023
Programming
440
0
Share
Famm Android改善記
2023/3/22 Ebisu.mobile #1
スライド内に一部動画が含まれているので、YouTubeの閲覧をおすすめします。
akatsuki174
March 22, 2023
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
620
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
1.1k
私が変えてきたこと、変えなかったこと
akatsuki174
2
1k
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
270
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
150
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
6.2k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
520
オフライン勉強会ぼっち対策
akatsuki174
1
720
Xcode 15の新機能
akatsuki174
0
2.9k
Other Decks in Programming
See All in Programming
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
930
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
220
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
380
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
400
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
370
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
200
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
270
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.2k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
280
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
160
JavaDoc 再入門
nagise
0
170
Talking to terminals (and how they talk back) (KotlinConf 2026)
jakewharton
PRO
1
140
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Faster Mobile Websites
deanohume
310
31k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
390
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
160
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Statistics for Hackers
jakevdp
799
230k
エンジニアに許された特別な時間の終わり
watany
107
240k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Tell your own story through comics
letsgokoyo
1
930
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
Famm Android ٕज़ෛ࠴ղফه Ebisu.mobile #1 @akatsuki174
֓ཁ
֓ཁ • Android൛FammͰͲΜͳٕज़ෛ࠴͕͋ΓɺͲΜͳ ۤ࿑͕͋ͬͨͷ͔Λհ • ΈΜͳͷʹཱͨͳ͍͜ͱʢݹ͍Ҩ࢈͕ͳ͍͜ͱʣ Λف͍ͬͯΔΑ…
ࣗݾհ
• Android/iOS/FlutterΤϯδχΞ • 1ࣇͷ • εϓϥτΡʔϯ3Έ͡ɹɹ γϡʔλʔ
ThreeTenABPͷআ
ThreeTenABPͱ • Java8͔Βಋೖ͞ΕͨDate and Time APIΛAndroid Ͱར༻ՄೳͳΑ͏ʹόοΫϙʔτͨ͠ͷ • ৄͪ͘͜͠ΒΛͲ͏ͧ •
https://techblog.timers-inc.com/entry/ 2016/06/27/121939
None
ࠩ͠ସ͑࡞ۀ • جຊతʹorg.threeten.bpΛjava.timeʹ͢Δ͚ͩ ͰOK
ViewPager-> ViewPager2ͷҠߦ
ViewPagerʢ2ʣͱ • JetpackϥΠϒϥϦͷதͷ̍ͭ • ը໘εϫΠϓͰϏϡʔϑϥάϝϯτΛΓସ͑Δ ͜ͱ͕Ͱ͖Δ
Nested Scroll͕ޮ͔ͳ͍ • ViewPagerͷதͰViewPagerΛ͍ͬͯΔͱ͜Ζ͕ ͋ͬͨ • ViewPagerͰͳ͔͕ͬͨɺViewPager2ʹ͠ ͨͱ͜ΖͷεΫϩʔϧ͕༏ઌ͞Εͯ͠·͍ɺࢠͷ εΫϩʔϧ͕Ͱ͖ͳ͘ͳͬͯ͠·ͬͨ
None
Nested Scroll͕ޮ͔ͳ͍ IUUQTEFWFMPQFSBOESPJEDPNEFWFMPQVJWJFXTBOJNBUJPOTWQNJHSBUJPO IMFOOFTUFE TDSPMMBCMFT
IUUQTHJUIVCDPNBOESPJEWJFXTXJEHFUTTBNQMFTCMPCNBTUFS7JFX1BHFSBQQTSDNBJOKBWB BOESPJEYWJFXQBHFSJOUFHSBUJPOUFTUBQQ/FTUFE4DSPMMBCMF)PTULU
ίʔυྫ
None
࣍View͕νϥݟͤͰ͖ͳ͍ • ԣεΫϩʔϧ͕Ͱ͖ΔΑ͏ʹͨ͠Pager෦Ͱى͖ ͨ • ࣍ͷView͕νϥݟ͑͢ΔUIʹ͍͕ͯͨͣ͠ɺ࣍ ͷView͕ݟ͑ͳ͍ঢ়ଶʹͳ͍ͬͯͨ
None
ίʔυྫ
None
None
ͦͷଞमਖ਼ • ListenerAdapterViewPager2ʹ߹͏Α͏ʹमਖ਼
ExoPlayerͷΞοϓσʔτ ʢr2.2.0->2.18.2ʣ
ExoPlayerͱ • AndroidͰಈըԻָΛѻ͏ͨΊͷMediaPlayer • FammͰಈը࠶ੜͷͨΊʹಋೖ͍ͯ͠Δ
ϋϚΓϙΠϯτ • ͱʹ͔͘API͕͜Ζ͜ΖมΘΔ • ϚΠφʔόʔδϣϯΞοϓσʔτͰมΘΔ • 2.4.0͔ΒSeekBar->DefaultTimeBarʹมΘͬͨ
ExoPlayer->Jetpack Media3 ͷҠߦ ʢதࢭʣ
Jetpack Media3ͱ • ಈըɺԻָ༻ͷϥΠϒϥϦ • ExoPlayer͕౷߹͞Ε͍ͯΔ • কདྷతʹMedia3ͷҠߦ͕ඞཁ
IUUQTTQFBLFSEFDLDPNNJYJ@FOHJOFFSTOJBOOPEPOHIVB[BJTIFOHBQVSJOP[VPSJGBOH
Ұ෦͏·͍͔͘ͳ͔ͬͨ • मਖ਼͕େ෯ʹඞཁͳՕॴͳ͘ɺجຊతʹ͏·͘ ͍ͬͨ • ͕ɺҰ෦Ϙλϯλοϓʹ͕ൃੜͨ͠ • ͷͪͷόʔδϣϯΞοϓͰมԽ͋Δ͔ͳ͊ͱࢥ͍ ͍ͬͨΜอཹ
None
None
None
IUUQTEFWFMPQFSBOESPJEDPNDPEFMBCTFYPQMBZFSJOUSP IMKB
Glide->CoilͷҠߦ ʢதࢭʣ
Coilʹ͠Α͏ͱͨ͠ • ͜Ε͔ΒJetpackComposeΛೖΕ͍͖͍ͯͨͷͰ Coilʹ͠Α͏ͱࢥͬͨ • ͕ɺCoil൛GlideFaceDetectionTransformationɹ ʢإͷҐஔΛத৺ʹBitmapΛੜ͢Δ Transformationʣ͕ݟ͔ͭΒͣɺͻͱ·ͣGlideΛ ͍ଓ͚Δ͜ͱʹ
ͦͷଞ
ͱʹ͔͘Ξοϓσʔτ • όʔδϣϯ൪߸Λม͑Δ͚ͩͰOKͳϥΠϒϥϦ ؚΊͯͱʹ͔͘ݹ͍ϥΠϒϥϦΛΞοϓσʔτͨ͠ • KotlinJetpackComposeͷͨΊʹΞοϓσʔτ
༨ஊɿDependabot • Ξοϓσʔτ͕ೖ͍ͬͯΔϥΠϒϥϦ͕͋ͬͨΒࣗ ಈͰPRΛ࡞ͬͯ͘ΕΔͭ • GitHub্Ͱϙνϙν͢Δ͚ͩͰઃఆͰ͖Δ • νϟϯε͕͋ΕೖΕͯΈ͔ͨͬͨ
͓ΘΓ