42
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AndroidX をソースからビルドする

Last updated at Posted at 2018-02-23

Jetpack AndroidX (旧サポートライブラリとアーキテクチャー コンポーネント) をソースコードからビルドする方法です。単に AndroidX を利用する場合は [公式ドキュメント] (https://developer.android.com/jetpack/androidx) を参照してください。

Jetpack Compose を試すためには、現状 AOSP からソースコードを取得してビルドする必要があります。以下の手順に沿ってプロジェクトを開けばデモ アプリを実行したり、自分でコードを追加して試したりすることができます。

リポジトリをダウンロードする

AOSP からソースコードをダウンロードするには Repo というツールを使います。Repo は複数の Git リポジトリをまとめ、全体で一つの Repo リポジトリとして扱うためのツールです。Repo コマンドをインストールしましょう。

$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

AOSP には AndroidX のビルド・開発に必要な Git リポジトリだけをまとめた Repo ブランチ androidx-master-dev が存在します。ソースコードは以下のようにして取得できます。

$ mkdir androidx-master-dev && cd androidx-master-dev
$ repo init -u https://android.googlesource.com/platform/manifest \
            -b androidx-master-dev
$ repo sync -c -j9

プロジェクトを開く

AndroidX の開発は Android Studio で行っています。開発者全員の Studio のバージョンを揃えるためのスクリプトが用意されているので、それを使って Android Studio を起動しましょう。

$ cd androidx-master-dev/frameworks/support
$ ./studiow

Jetpack Compose のプロジェクトを開くには、他のコンポーネントとは別の特殊な Android Studio が必要です。同じ名前のスクリプトが ui ディレクトリに含まれているので、そちらを実行しましょう。

$ cd androidx-master-dev/frameworks/support/ui
$ ./studiow

デモ プロジェクトを実行する

AndroidX のプロジェクトにはいくつかのデモ アプリが含まれています。これらは主に内部の開発者のデバッグ・テスト用ですが、API の使い方の参考にはなるでしょう。いずれも Android Studio から実行できます。

  • support-v4-demos
  • support-v7-demos
  • support-transition-demos
  • support-emoji-demos
  • など

ビルドは Android Studio からもできます。コマンドラインで Gradle を使ってもビルドできます。

# ビルド
$ ./gradlew assembleDebug

# テスト
$ ./gradlew support-transition:connectedCheck

コントリビュートする

コントリビュートする前に イシュー トラッカー に不具合報告や機能要望を登録するのがいいでしょう。

GitHub で言うところのプル リクエストは、AOSP では CL (Change list) と呼ばれます。以下のようにして CL を送ることができます。

$ cd frameworks/support

# トピック ブランチを作る
$ repo start my-change .

# ファイル編集、デバッグ、テスト

# コミットは git コマンドで
$ git add .
$ git commit

# Gerrit にアップロード
$ repo upload .

# レビューでコメントがついたら、適宜修正してアップロードし直す
$ git add .
$ git commit --amend
$ repo upload .

コミット メッセージには自動で Change-Id: 〜 という行が付きます。この行を変更してはいけません。また、どのテストを実行したかを示す Test: {テスト クラス名など} を Change-Id の上の行に追加してください。イシュー トラッカーにバグが登録されている場合 Bug: {バグ番号} のようにすることで関連付けることができます。

以上。

42
23
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?