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
AndroidXとAOSP / Cookpad.apk #1
Search
star_zero
August 21, 2018
Technology
1
5.1k
AndroidXとAOSP / Cookpad.apk #1
star_zero
August 21, 2018
Tweet
Share
More Decks by star_zero
See All by star_zero
今からはじめるAndroidアプリ開発 2024 / DevFest 2024
star_zero
0
1.3k
Jetpack Compose の Side-effect を使いこなす / DroidKaigi 2023
star_zero
5
6.1k
Android 14 新機能 / Android 14 Meetup Nagoya
star_zero
1
600
Android 14 と Predictive back gesture / Shibuya.apk #42
star_zero
0
390
Coroutines Test 入門 / Android Test Night #8
star_zero
2
1.1k
What's new in Jetpack / I/O Extended Japan 2022
star_zero
1
640
Kotlin 2021 Recap / DevFest 2021
star_zero
3
1.3k
Kotlin Symbol Processing (KSP) を使ったコード生成 / DroidKaigi 2021
star_zero
2
5.2k
What's new Android 12
star_zero
0
570
Other Decks in Technology
See All in Technology
Devin(Deep) Wiki/Searchの活用で変わる開発の世界観/devin-wiki-search-impact
tomoki10
0
300
「伝える」を加速させるCursor術
naomix
0
610
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
110
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
140
kotlin-lsp を Emacs で使えるようにしてみた / use kotlin-lsp in Emacs
nabeo
0
140
自分を理解するAI時代の準備 〜マイプロフィールMCPの実装〜
edo_m18
0
100
AIコーディング新時代を生き残るための試行錯誤 / AI Coding Survival Guide
tomohisa
9
12k
Workflows から Agents へ ~ 生成 AI アプリの成長過程とアプローチ~
belongadmin
2
140
Whats_new_in_Podman_and_CRI-O_2025-06
orimanabu
3
170
評価の納得感を2段階高める「構造化フィードバック」
aloerina
1
150
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
770
IAMのマニアックな話 2025を執筆して、 見えてきたAWSアカウント管理の現在
nrinetcom
PRO
3
530
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
The Invisible Side of Design
smashingmag
299
50k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Writing Fast Ruby
sferik
628
61k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
How GitHub (no longer) Works
holman
314
140k
Adopting Sorbet at Scale
ufuk
77
9.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
KATA
mclloyd
29
14k
Transcript
AndroidX と AOSP Cookpad.apk #1
About me • Kenji Abe • 2018/07入社 • メディアプロダクト開発部 •
Twitter: STAR_ZERO
話すこと • AndroidXとAOSPにざっくりと ‣ ソースコードや履歴をみる ‣ コード取得とビルド ‣ パッチについて
AndroidX
AndroidX • 新しいパッケージ • Support Library, Architecture Componentsなどが移行 • android.supportは28.0.0が最後
の予定
AOSP
AOSP • Android Open Source Project • OSやライブラリなどのソースコード • Gerritによるコードレビュー
• repoツールによるリポジトリ管理
AndroidX + AOSP
AndroidXがAOSPに公開 https://android-developers.googleblog.com/2018/07/androidx-development-is-now-even-better.html
AndroidX + AOSP • ソースコードが見れる • 変更履歴が見れる • DLして手元でビルド、実行できる •
パッチを送れる
ソースコードをみる
ソースコード https://android.googlesource.com/platform/frameworks/support/
None
変更履歴をみる
変更履歴 • gitのログ • Gerritの履歴 ‣ 送られたパッチ ‣ コードレビュー
Gerrit https://android-review.googlesource.com/q/status:open
Gerrit
Gerrit
Gerrit
コードのダウンロード ビルドと実行
コードのダウンロード • repoツールが必要 ‣ https://source.android.com/setup/ build/downloading $ curl https://storage.googleapis.com/git-repo-downloads/repo >
~/bin/repo $ chmod a+x ~/bin/repo
コードのダウンロード $ repo init \ -u https://android.googlesource.com/platform/manifest \ -b androidx-master-dev
$ repo sync -j8 -c
ビルドと実行 $ cd frameworks/support $ ./gradlew createArchive // gradle maven
{ url 'path_to/out/host/gradle/frameworks/support/build/support_repo' }
Android Studioで開く frameworks/supportをASで開くだけ
いろいろ捗る • ASで開くとコードが読みやすい • 自由に修正できる ‣ ログを埋め込み ‣ コード書き換え •
リリース前の機能を試せる
パッチ
パッチ • 受け付けてくれるパッチ ‣ バグ修正(Issue Trackerが必要) ‣ スペルミス ‣ ドキュメント更新
‣ カバーできてなかった箇所の新テスト
パッチ • パッチはChangeList (CL)と呼ばれる • 1CLで1Commit • パッチの修正は git commit
--amend • 参考 ‣ https://qiita.com/yuichi_araki/items/a8db45e5aa1daad8152e
パッチを送る $ cd /path_to/frameworks/support/ # ブランチ作成 $ repo start my_patch
. # 修正... $ git add . $ git commit # パッチ送信 $ repo upload --current-branch .
コントリビュート
まとめ
まとめ • AndroidXのコード取得とビルドは 難しくない • 手元で動かせるといろいろ捗る • チャンスがあればコントリビュート
おわり