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
Android Framework Code Readingのしおり ver 1.2
Search
operandoOS
November 10, 2016
Technology
1
350
Android Framework Code Readingのしおり ver 1.2
Android Framework Code Readingのしおり ver 1.2
operandoOS
November 10, 2016
Tweet
Share
More Decks by operandoOS
See All by operandoOS
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
730
EMから見たLinQ
operando
2
180
private spaceについてあれこれ調べてみた
operando
1
360
Flutter ランチ #2
operando
0
190
Flutter ランチ #1
operando
0
150
10XでのZapier活用事例の紹介
operando
0
1.3k
CircleCIでtiming dataに基づいたテスト分割をDartで利用できるようにした話.
operando
3
2.9k
App hibernation🥶
operando
0
340
できる!Android Framework Code Reading
operando
2
890
Other Decks in Technology
See All in Technology
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
850
LLM時代のパフォーマンスチューニング:MongoDB運用で試したコンテキスト活用の工夫
ishikawa_pro
0
170
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
270
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
120
Agile PBL at New Grads Trainings
kawaguti
PRO
1
450
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
210
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
Unlocking the Power of AI Agents with LINE Bot MCP Server
linedevth
0
110
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
人工衛星のファームウェアをRustで書く理由
koba789
15
8.2k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Documentation Writing (for coders)
carmenintech
74
5k
Visualization
eitanlees
148
16k
Building an army of robots
kneath
306
46k
A designer walks into a library…
pauljervisheath
207
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Invisible Side of Design
smashingmag
301
51k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
Android Framework Code Readingͷ͓͠Γ ver 1.2
ඪ
ඪ • ಡΈ࢝ΊΔʹͲ͔͜Β୳͍͍ͤͷ͔Θ͔Δ • Android Frameworkͷίʔυ͕ͳΜͱͳ͘ ಡΊΔΑ͏ʹͳΔ • ͏Androidා͘ͳ͍ (ʆŋωŋ´)
༻ҙ͢Δͷ
༻ҙ͢Δͷ • ͓ΈͷEditor • OpenGrok • https://sites.google.com/site/devcollaboration/codesearch • ΫιίʔυಡΜͰΊ͛ͳ͍ؾ࣋ͪ •
جຊ͜Ε͚ͩ
ಡΈ͍͢ڥΛ࡞Δ • FirefoxͷπϦʔܕλϒͱ͍͏֦ு͕Φεεϝ • https://addons.mozilla.org/ja/firefox/addon/ tree-style-tab/ • ಡΜͰ͍Δίʔυͷϝιουݺͼग़͠ͷ֊ ͱ͔ཧ͍͢͠
ಡΈ͍͢ڥΛ࡞Δ ͜Μͳײ͡ʔ
OpenGrok
OpenGrok • ιʔείʔυΛϒϥβͰӾཡͰ͖Δͷ • methodͷϦϯΫͱ͔షͬͯ͋ͬͯศརʂʂ • AndroidͷιʔείʔυOpenGrokԽͯ͋͠Γ·͢ • ιʔείʔυखݩʹͳͯ͘ಡΊͯศརʂʂ
OpenGrokʹ׳ΕΔ
OpenGrokʹ׳ΕΔ • Full SearchΛࢦఆ͢Δ • File PathΛࢦఆ͢Δ • جຊ্̎ͭͰ͍͍ͩͨOK •
ࠔͬͨΒHelpΛݟ͍ͯํΛϚελʔ͢Δ • http://tools.oesf.biz/android-6.0.0_r1.0/help.jsp
खݩʹίʔυΛμϯϩʔυ͢Δ • શ෦ͷιʔείʔυΛμϯϩʔυ͢Δͷେม • OpenGrok͔ΒFile୯ҐͰμϯϩʔυͰ͖Δ • Α͘ࢀর͢ΔϑΝΠϧμϯϩʔυ͓ͯ͘͠ͱศར • URLͷxrefͱrawʹͯ͠ΞΫηε͢ΔͱBrowser ܦ༝ͰμϯϩʔυͰ͖Δͣ
खݩʹίʔυΛμϯϩʔυ͢Δ http://tools.oesf.biz/android-6.0.0_r1.0/xref/ frameworks/base/core/java/android/app/Activity.java http://tools.oesf.biz/android-6.0.0_r1.0/raw/frameworks/ base/core/java/android/app/Activity.java
ҙ֎ͱखݩʹ͍࣋ͬͯΔιʔείʔυ • Android SDK Manager͔ΒऔಘͰ͖Δͷ • /Applications/Android Studio.app/sdk/sources • /Applications/Android
Studio.app/sdk/extras/ android/support • /Applications/Android Studio.app/sdk/extras/ android/m2repository/com/android/support
खܰʹಡΊͦ͏ͳͱ͜Ζ • frameworks/ • Android Frameworksશൠͷίʔυ • frameworks/base/core/java/ • Android
SDKશൠͷίʔυ
खܰʹಡΊͦ͏ͳͱ͜Ζ • packages/apps/ • γεςϜΞϓϦશൠͷίʔυ • http://tools.oesf.biz/android-6.0.0_r1.0/xref/ packages/apps/Settings/ • SettingsΞϓϦͷίʔυ(Φεεϝʂ)
ʹཱͪͦ͏ͳϦϯΫ·ͱΊͯ·͢ https://github.com/AndroidFrameworkCodeReading/ Android-Framework-Code-Reading
GopenGrok https://github.com/operando/gopen-grok ίϚϯυϥΠϯ͔ΒOpenGrokͷ ݕࡧ͕Ͱ͖Δπʔϧ
GopenGrok https://github.com/operando/gopen-grok $ gopen-grok -s Activity
GopenGrok https://github.com/operando/gopen-grok
GopenGrok Install https://github.com/operando/gopen-grok $ go get -d github.com/operando/gopen-grok $ go
install github.com/operando/gopen-grok
LogcatٯҾ͖
LogcatٯҾ͖ • LogcatʹྲྀΕ͍ͯΔϩάίʔυ্ʹ ॻ͍ͯ͋Δͣ(ಈతͳͷҎ֎ • ௐ͍ͨػೳͬΆ͍ͷ͕ྲྀͯ͠ΔLogcat͔Β ಛఆͷΩʔϫʔυͰݕࡧΛ͔͚Δ
LogcatٯҾ͖ • ྫ͑ɺҎԼͷϩάͷgetDirectorySizeͬͯͲ ͏ͬͯௐͯΔ͔Γ͍ͨʂͱͯ͠…
LogcatٯҾ͖ • ͡ΌͱΓ͋͑ͣʮgetDirectorySizeʯͬͯ ΩʔϫʔυͰOpenGrokݕࡧ͢Δ
ʮgetDirectorySizeʯͷݕࡧ݁Ռ ݟࣄʹͦΕͬΆͷ Ҿ͔͔ͬͬͨ
ίʔυΛݟΔͱ͜Μͳײ͡ • IMediaContaninerServiceͶʔʔ • LogcatʹྲྀΕͯͨͷ 438ߦͷͭ
LogcatٯҾ͖ • ͏·͘ώοτ͢Ε࠷ߴͷٕ • Ͳͷϩά͕ྑͦ͞͏͔ݟۃΊΔͷ৬ਓٕ • LogcatʹྲྀΕ͍ͯΔϝοηʔδ͕੩తͳͷ͔ ಈతͳͷ͔அ͢Δͷ৬ਓٕ
·ͱΊํ
͋ͱͰݟฦ͢Α͏ʹ͜͏ॻ͘ͱ͍͍͔ λΠτϧ ݟग़͠
͋ͱͰݟฦ͢Α͏ʹ͜͏ॻ͘ͱ͍͍͔ Θ͔ͬͨ͜ͱΛ Օॻ͖
͋ͱͰݟฦ͢Α͏ʹ͜͏ॻ͘ͱ͍͍͔ ॏཁͳͱ͜Ζ ίʔυͷURLͱ࣮ࡍͷίʔυΛ ίϐϖͯ͠ॻ͍͓ͯ͘
͋ͱͰݟฦ͢Α͏ʹ͜͏ॻ͘ͱ͍͍͔ • Markdownͱ͔Ͱదʹॻ͘ • ίʔυͷURLΊͬͪΌେࣄ • ॻ͍ͨΒGithubGistʹஔ͍͓ͯ͘ͱ ݕࡧͰָ͖ͯ
JobScheduler-Code-Reading https://github.com/operando/JobScheduler-Code-Reading ·ͱΊํͷࢀߟʹͲ͏ͧʔ
Thanks!!