SlideShare a Scribd company logo
ver 1.1
目的地
目的地
• 読み始めるにはどこから探せばいいのかわかる
• 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を指定する
• 基本上2つでだいたい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
Android-Framework-Code-Reading
緊急連絡先
緊急連絡先
• @operandoOS
• https://twitter.com/operandoOS
Thanks!!

More Related Content

PDF
まったりAndroid Framework Code Reading #3
Shinobu Okano
 
PDF
Android Framework Code Readingのしおり
Shinobu Okano
 
PDF
まったりAndroid Framework Code Reading #4
Shinobu Okano
 
PDF
Android Framework Code Readingのしおり ver 1.2
Shinobu Okano
 
PDF
まったりAndroid framework code reading #1
Shinobu Okano
 
PDF
まったりAndroid framework code reading #2
Shinobu Okano
 
PDF
Inside Android N
Shinobu Okano
 
PDF
Practical Android scripting with Ruby
Masahiro Kawato
 
まったりAndroid Framework Code Reading #3
Shinobu Okano
 
Android Framework Code Readingのしおり
Shinobu Okano
 
まったりAndroid Framework Code Reading #4
Shinobu Okano
 
Android Framework Code Readingのしおり ver 1.2
Shinobu Okano
 
まったりAndroid framework code reading #1
Shinobu Okano
 
まったりAndroid framework code reading #2
Shinobu Okano
 
Inside Android N
Shinobu Okano
 
Practical Android scripting with Ruby
Masahiro Kawato
 

What's hot (15)

PDF
詳細設計とアプリケーション開発工程
康 新谷
 
PDF
5分で資料作ってSlideShareにアップロードする錬金術
Shinobu Okano
 
PDF
はじめよう!Ossコードリーディング!!
友里 高島
 
PDF
リーダブルコード勉強会 in 筑波大のまとめ
Kouhei Sutou
 
PDF
ChromeとAndroidの 過去・現在・未来 ver 0.1
Shinobu Okano
 
PPTX
第一号 特集案
Kenta Yanagida
 
PDF
なるべくコードを書かないAndroid開発
Hiroshi Kikuchi
 
PPTX
きつねさんでもわかる Firefox OS コードリーディング入門
Mizuho Sakamaki
 
PPTX
関西FXOS勉強会3rdGIG キーボード大好き!
雅彦 金井
 
PDF
Django と Wagtail で作る Headless CMS
Iosif Takakura
 
PDF
shinobu.apk #1
Shinobu Okano
 
PDF
Beatroboでのハードウェアプロトタイピング
Hideyuki TAKEI
 
PDF
Jokerscriptを勝手に紹介
tuna cook
 
PDF
Bot Service 概要
Yoshitaka Seo
 
PPTX
ポケ森のフレンド登録が面倒だったので gem を作った話(アキバエンジニア懇親会 2018/03/01)
Osamu Takiya
 
詳細設計とアプリケーション開発工程
康 新谷
 
5分で資料作ってSlideShareにアップロードする錬金術
Shinobu Okano
 
はじめよう!Ossコードリーディング!!
友里 高島
 
リーダブルコード勉強会 in 筑波大のまとめ
Kouhei Sutou
 
ChromeとAndroidの 過去・現在・未来 ver 0.1
Shinobu Okano
 
第一号 特集案
Kenta Yanagida
 
なるべくコードを書かないAndroid開発
Hiroshi Kikuchi
 
きつねさんでもわかる Firefox OS コードリーディング入門
Mizuho Sakamaki
 
関西FXOS勉強会3rdGIG キーボード大好き!
雅彦 金井
 
Django と Wagtail で作る Headless CMS
Iosif Takakura
 
shinobu.apk #1
Shinobu Okano
 
Beatroboでのハードウェアプロトタイピング
Hideyuki TAKEI
 
Jokerscriptを勝手に紹介
tuna cook
 
Bot Service 概要
Yoshitaka Seo
 
ポケ森のフレンド登録が面倒だったので gem を作った話(アキバエンジニア懇親会 2018/03/01)
Osamu Takiya
 
Ad

Viewers also liked (9)

PDF
shinobu.apk #2
Shinobu Okano
 
PDF
Gradle PluginとCIと俺
Shinobu Okano
 
PDF
Lightweight-Stream-APIのあるAndroidアプリ開発
Shinobu Okano
 
PDF
DroidKaigiアプリをSpoonで全画面スクショするぞい\(^o^)/
Shinobu Okano
 
PDF
Kotlinでマッチョする話
Shinobu Okano
 
PDF
Android + JSON-RPC
Shinobu Okano
 
PDF
shinobu.apk #3
Shinobu Okano
 
PDF
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
Shinobu Okano
 
PDF
Kotlinにお触り
Shinobu Okano
 
shinobu.apk #2
Shinobu Okano
 
Gradle PluginとCIと俺
Shinobu Okano
 
Lightweight-Stream-APIのあるAndroidアプリ開発
Shinobu Okano
 
DroidKaigiアプリをSpoonで全画面スクショするぞい\(^o^)/
Shinobu Okano
 
Kotlinでマッチョする話
Shinobu Okano
 
Android + JSON-RPC
Shinobu Okano
 
shinobu.apk #3
Shinobu Okano
 
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
Shinobu Okano
 
Kotlinにお触り
Shinobu Okano
 
Ad

Similar to Android Framework Code Readingのしおり ver 1.1 (20)

PDF
できる!スマホアプリ:Webからはじまるアプリ for CMU16
Masami Yabushita
 
PDF
はじめる前に知っておきたいAndroidアプリ開発のポイント
Shinobu Okano
 
PDF
趣味プログラマの先輩からのアドバイス
Hiroaki Murayama
 
PDF
できる!スマホアプリ:Webからはじまるアプリ
Masami Yabushita
 
PDF
Introduction of Rhodes
Hitoshi Kuroyanagi
 
PDF
Blenderソースコードリーディング
Tetsuo Mitsuda
 
PDF
CodingTips+ 基礎編
Yusuke Ito
 
PDF
OSSで楽に作るGo言語クライアントツール
Tano Makoto
 
PPTX
ノーコードハンズオン
tagashirajun2
 
PDF
失敗から学ぶAndroid設計話
chigichan24
 
PPTX
XMLpro 1回目 環境導入
XMLProJ2014
 
PDF
GarumとMeteoriteと私 3nd Edition ver0.04
Shinobu Okano
 
PDF
4時間まったりWordPressテーマ作成講座
Shinichi Nishikawa
 
PDF
[20130624]最近の開発環境について話してみる sakata
VOYAGE GROUP
 
PDF
論理思考とプログラミング 2013f#10
Noritada Shimizu
 
PDF
android_on_groovy
ichigotake .
 
PPTX
クロスプラットフォーム開発環境のすヽめ
Yuki Yazaki
 
PDF
Swift afterbeginner
Kiminari Homma
 
PDF
20141018 osc tokyo_fall_firefox osってなぁに?
Masami Yabushita
 
PDF
Firefoxの開発ツール
Noritada Shimizu
 
できる!スマホアプリ:Webからはじまるアプリ for CMU16
Masami Yabushita
 
はじめる前に知っておきたいAndroidアプリ開発のポイント
Shinobu Okano
 
趣味プログラマの先輩からのアドバイス
Hiroaki Murayama
 
できる!スマホアプリ:Webからはじまるアプリ
Masami Yabushita
 
Introduction of Rhodes
Hitoshi Kuroyanagi
 
Blenderソースコードリーディング
Tetsuo Mitsuda
 
CodingTips+ 基礎編
Yusuke Ito
 
OSSで楽に作るGo言語クライアントツール
Tano Makoto
 
ノーコードハンズオン
tagashirajun2
 
失敗から学ぶAndroid設計話
chigichan24
 
XMLpro 1回目 環境導入
XMLProJ2014
 
GarumとMeteoriteと私 3nd Edition ver0.04
Shinobu Okano
 
4時間まったりWordPressテーマ作成講座
Shinichi Nishikawa
 
[20130624]最近の開発環境について話してみる sakata
VOYAGE GROUP
 
論理思考とプログラミング 2013f#10
Noritada Shimizu
 
android_on_groovy
ichigotake .
 
クロスプラットフォーム開発環境のすヽめ
Yuki Yazaki
 
Swift afterbeginner
Kiminari Homma
 
20141018 osc tokyo_fall_firefox osってなぁに?
Masami Yabushita
 
Firefoxの開発ツール
Noritada Shimizu
 

More from Shinobu Okano (10)

PDF
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Shinobu Okano
 
PDF
ChromeとAndroidの過去・現在・未来
Shinobu Okano
 
PDF
Android Dev Tools Knowledge
Shinobu Okano
 
PDF
Logcatの話
Shinobu Okano
 
PDF
隕石という名のスクリーンショットをSlackに落下させる話
Shinobu Okano
 
PDF
Upload a screenshot to Slack
Shinobu Okano
 
PDF
JobScheduler Code Reading
Shinobu Okano
 
PDF
『メルカリ』のアップデート監視 を支える(かもしれない)技術
Shinobu Okano
 
PDF
Screenshots Test spoon + espresso
Shinobu Okano
 
PDF
App Permissions
Shinobu Okano
 
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Shinobu Okano
 
ChromeとAndroidの過去・現在・未来
Shinobu Okano
 
Android Dev Tools Knowledge
Shinobu Okano
 
Logcatの話
Shinobu Okano
 
隕石という名のスクリーンショットをSlackに落下させる話
Shinobu Okano
 
Upload a screenshot to Slack
Shinobu Okano
 
JobScheduler Code Reading
Shinobu Okano
 
『メルカリ』のアップデート監視 を支える(かもしれない)技術
Shinobu Okano
 
Screenshots Test spoon + espresso
Shinobu Okano
 
App Permissions
Shinobu Okano
 

Recently uploaded (10)

PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PPTX
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
PDF
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 

Android Framework Code Readingのしおり ver 1.1