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
EMから見たLinQ
operando
2
180
private spaceについてあれこれ調べてみた
operando
1
360
Flutter ランチ #2
operando
0
180
Flutter ランチ #1
operando
0
140
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
設定だけでCircleCIの実行時間を短縮できるかもしれない話
operando
0
330
Other Decks in Technology
See All in Technology
Rubyの国のPerlMonger
anatofuz
3
740
データモデリング通り #2オンライン勉強会 ~方法論の話をしよう~
datayokocho
0
180
僕たちが「開発しやすさ」を求め 模索し続けたアーキテクチャ #アーキテクチャ勉強会_findy
bengo4com
0
2.5k
LTに影響を受けてテンプレリポジトリを作った話
hol1kgmg
0
380
テストを実行してSorbetのsigを書こう!
sansantech
PRO
1
130
Engineering Failure-Resilient Systems
infraplumber0
0
120
PL/pgSQLの基本と使い所
tameguro
2
230
開発 × 生成AI × コミュニケーション:GENDAの開発現場で感じたコミュニケーションの変化 / GENDA Tech Talk #1
genda
0
280
Kiro と Q Dev で 同じゲームを作らせてみた
r3_yamauchi
PRO
1
110
AWS DDoS攻撃防御の最前線
ryutakondo
1
170
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.7k
o11yツールを乗り換えた話
tak0x00
2
1.6k
Featured
See All Featured
KATA
mclloyd
32
14k
Into the Great Unknown - MozCon
thekraken
40
2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Music & Morning Musume
bryan
46
6.7k
Typedesign – Prime Four
hannesfritz
42
2.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
GitHub's CSS Performance
jonrohan
1031
460k
Speed Design
sergeychernyshev
32
1.1k
How STYLIGHT went responsive
nonsquared
100
5.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
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!!