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
arap_osaka_1
Search
Yosuke Fujii
September 28, 2019
Programming
1
400
arap_osaka_1
Yosuke Fujii
September 28, 2019
Tweet
Share
More Decks by Yosuke Fujii
See All by Yosuke Fujii
アプリ開発初心者が Androidアプリを作っている話
syousa1982
0
2k
アプリ開発初挑戦のチームでアプリ運用の自動化した話
syousa1982
0
300
Other Decks in Programming
See All in Programming
エンジニア向け採用ピッチ資料
inusan
0
170
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
940
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
380
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
1k
関数型まつりレポート for JuliaTokai #22
antimon2
0
160
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
130
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
510
Benchmark
sysong
0
270
Select API from Kotlin Coroutine
jmatsu
1
190
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
170
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
250
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
Featured
See All Featured
Navigating Team Friction
lara
187
15k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Fireside Chat
paigeccino
37
3.5k
How GitHub (no longer) Works
holman
314
140k
Code Reviewing Like a Champion
maltzj
524
40k
Faster Mobile Websites
deanohume
307
31k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
Transcript
AndroidΞϓϦ ύϑΥʔϚϯενϡʔχϯά @syo_sa1982
• ͠ΐʔ͞(౻Ҫ ཅհ) • Twitter:@syo_sa1982 • GitHub:@syo-sa1982 • ωΫετΠϊϕʔγϣϯגࣜձࣾॴଐ •
Androidྺ1͘Β͍ • ࠷ۙαʔόʔαΠυKotlinΛษڧத • ΫϥϑτϏʔϧ͖
αʔϏεͷհ IUUQTTVNBMVOBDPN
2019-07-29 αʔϏεϩʔϯν
ύϑΥʔϚϯεվળΛ ߦ͏ࣄʹͳΔ·Ͱͷ
ϦϦʔεલͷϢʔβʔςετʹͯʜ ͳΜ͔ΞϓϦॏ͘ͳ͍ʜʁ ը໘ͷભҠ͍࣌͠ʑݻ·Δ
ϦϦʔεޙ ΜΜʁετΞͷධՁʹΞϓϦىಈͰ͖ͳ͍ ͱ͔ॻ͔ΕͯΔʁʁ ຊ൪ΞϓϦಈ͍ͯͳ͍Ϣʔβʔ͕͓Δʁ
ൃੜͨ͠ύϑΥʔϚϯε՝ • ࣄྫ1:ը໘ભҠɾද͕ࣔඇৗʹ͍ • ಛʹBottomNavigationͷΓସ͕͍͑ • ભҠޙʹϑϦʔζ͢Δ͜ͱ • ࣄྫ2:ىಈޙʹΫϥογϡ͢Δ •
Ϣʔβʔ͔ΒͷධՁͰൃ֮ • ಛఆͷέʔεͰൃੜ͍ͯͨ͠
ࣄྫ ը໘ભҠɾද͕͍ࣔ ͷௐࠪͰͬͨ͜ͱ
·ͣܭଌɻ
·ͣܭଌɻ ϓϩϑΝΠϥΛ ىಈͤͯ͞ܭଌ
·ͣܭଌɻ
• CPU • CPUͷ༻ͱ ༻࣌ؒͷܭଌ • Memory • ϝϞϦ༻ྔͱ ֤ݺͼग़͠ͷϝϞϦ
༻ྔͷܭଌͳͲ • Network • ωοτϫʔΫͷෛՙ
ࠓճͷࣄྫͰ ʮͲ͜Ͱॲཧʹ͔࣌ؒ ͔ͬͯΔͷ͔ʯ Λಥ͖ࢭΊΔͨΊʹ CPUͷΈΛܭଌ
None
RecordϘλϯΛԡ͔ͯ͠Β ࣮ࡍʹΞϓϦΛಈ͔ͯ͠CPUͷಈ͖Λܭଌ
None
ॲཧʹֻ͕͔͍࣌ؒͬͯͯͭɺ ϓϩδΣΫτͰ࣮ͨ͠ϝιουΛ୳͢
Ͱɺॏ͘ͳ͍ͬͯͨݪҼԿͩͬͨͷ͔ʁ • ηΩϡΞใΛSharedPreferences͔Βࢀর ͢Δ࣌ʹॏ͘ͳ͍ͬͯͨɻ • ηΩϡΞใΛѻ͏ϥΠϒϥϦͷ߹ʹ߹Θ ͤͯΛׂͯ͠อଘɻ • ͜ͷ͜ͱ͕ݪҼͰಡΈࠐΈ࣌ʹ༨ܭͳॲཧ͕ ෳճݺΕ͍ͯͨɻ
ରॲ๏ʁ • ͬͯͨϥΠϒϥϦΛࣺͯͯɺ ࣗલͰ҉߸Խɾ෮߸ͷॲཧΛॻ͍ͨɻ • ଞͷϥΠϒϥϦݕ౼͚ͨ͠ͲɺԿ͔͠Β੍ݶ ͕༗ͬͨΓͯ͠͏ͱ٫ͬͯ໘ͩͱஅɻ • ηΩϡΞใѻ͏ͷʹϥΠϒϥϦͳΜͯཁΒΜ ͔ͬͨΜ
ࣄྫͷ·ͱΊ • ύϑΥʔϚϯεվળ·ͣܭଌ͔ΒɻͪΖΜҋӢʹܭ ଌ͢ΔͷͰͳ͘ɺϘτϧωοΫΛಛఆ͢ΔͨΊʹ ProfilerͷπʔϧΛ׆༻͠·͠ΐ͏ɻ • ࠓճCPU࣌ؒͷܭଌͰݟ͚ͨͲɺଞʹϝϞϦཧ ϨϯμϦϯάͷղੳͳͲΞϓϩʔνํ๏ෳ͋Γ·͢ɻ • ͜ΕΒʑݟ͍͖͍ͯͨɻ
• ηΩϡΞใѻ͏ͷʹϥΠϒϥϦͳΜͯཁΒΜ͔ͬͨΜ (2ճ
ࣄྫ ຊ൪ΞϓϦ͕Ϋϥογϡ͢Δ ͷௐࠪͰͬͨ͜ͱ
None
None
Πϕϯτ/Ϣʔβʔ͕ಛʹଟ͍ ΫϥογϡϨϙʔτΛ୳͢
ىͯ͜͠ΔՕॴͷ StackTraceΛ͔͜͜Β֬ೝ
Androidͷόʔδϣϯ ͰߜΓࠐΉ͜ͱͰ͖Δ
͜ͷௐࠪʹΑͬͯɺ ຊ൪ΞϓϦͷΫϥογϡ ແࣄղܾ͠·͕ͨ͠ʜɻ
None
None
None
ࠓʹͯ͠ࢥ͑ɺ ετΞͷϦϦʔεલϨϙʔτΛ ͔ͬ͠Γରॲ͢Ε ͛ͨͳͱࢥ͍·ͨ͠PS[
ࣄྫͷ·ͱΊ • ຊ൪ΞϓϦͷΫϥογϡStackTraceΛݟΕ Δঢ়گʹ͓͚ͯ͠ɺϑΟʔυόοΫ্͕͕ͬͯ ͖ͯରॲ͘͢͠ͳΔ • ͪΖΜൃੜ͢Δલʹ௵͓ͯ͘͜͠ͱ͕ॏཁͳ ͷͰɺීஈ͔ΒݕͰ͖ΔΈ༻ҙ͓ͯ͠ ͖͍ͨɻ