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
0
340
Famm Android改善記
2023/3/22 Ebisu.mobile #1
スライド内に一部動画が含まれているので、YouTubeの閲覧をおすすめします。
akatsuki174
March 22, 2023
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
42
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
5.4k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
400
オフライン勉強会ぼっち対策
akatsuki174
1
580
Xcode 15の新機能
akatsuki174
0
2.6k
AndroidにもSelect Photosがやってきた
akatsuki174
0
1.2k
Flutterアプリ開発にネイティブコードはどこまで求められるのか
akatsuki174
2
4.5k
UIKitのアップデート #WWDC22
akatsuki174
4
1.3k
職能/職種横断でチームの生産性を高める
akatsuki174
2
5.8k
Other Decks in Programming
See All in Programming
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
200
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
180
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
270
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
110
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
130
103 Early Hints
sugi_0000
1
230
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
3
700
複雑な仕様に立ち向かうアーキテクチャ
myohei
0
170
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
73
9.1k
Navigating Team Friction
lara
183
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Thoughts on Productivity
jonyablonski
67
4.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Mobile First: as difficult as doing things right
swwweet
222
9k
Producing Creativity
orderedlist
PRO
341
39k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
How to Ace a Technical Interview
jacobian
276
23k
Practical Orchestrator
shlominoach
186
10k
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্Ͱϙνϙν͢Δ͚ͩͰઃఆͰ͖Δ • νϟϯε͕͋ΕೖΕͯΈ͔ͨͬͨ
͓ΘΓ