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
Drawing with LLMs
rist
0
250
基調講演: 生成AIを活用したアプリケーションの開発手法とは?
asei
1
110
Nonaka Sensei
kawaguti
PRO
3
540
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.6k
プロジェクトマネージャーに最後まで残るたった一つの仕事は交渉
ichimichi
1
200
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
370k
What's new in OpenShift 4.19
redhatlivestreaming
1
110
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
4
1k
Introduction to Bill One Development Engineer
sansan33
PRO
0
250
Amazon DevOps Guru のベースラインを整備して1ヶ月ほど運用してみた #jawsug_asa / Amazon DevOps Guru trial
masahirokawahara
3
240
Kubernetesで作るAIプラットフォーム
oracle4engineer
PRO
2
240
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
6.9k
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
680
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
It's Worth the Effort
3n
184
28k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Cult of Friendly URLs
andyhume
79
6.4k
What's in a price? How to price your products and services
michaelherold
245
12k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Become a Pro
speakerdeck
PRO
28
5.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.4k
Automating Front-end Workflow
addyosmani
1370
200k
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のコード取得とビルドは 難しくない • 手元で動かせるといろいろ捗る • チャンスがあればコントリビュート
おわり