下林明正のブログ

個人的かつ雑多なブログです。

GradleでBuild Variantsを使ってAndroid開発ができると便利ですね

Gradle+Android Studioにするメリットとしては、

  • プロジェクトのインポートが楽になる
    • Eclipseのようにプロジェクトの作成に熟練を要しない
  • Build Variantsを利用して、ターゲット毎にapkを作り分けられる

というあたりがあると思う。特に後者が個人的には魅力的で、開発環境を向いたapkとプロダクション環境を向いたapkを良い感じに出し分けたかったので使いたいと思っていた。

出たばかりであまり良い日本語情報が無い中、英語を読むまでのやる気が無い僕には以下の2エントリーは非常に参考になった。

Gradleらしさのあるディレクトリ構成については、Build System Concepts - Android Tools Project SiteのSourcesetsを眺めるのが手っ取り早いように感じた。こういう感じのディレクトリ構成にしないとおそらくBuild Variantsの恩恵は受けられない。

コンパイルする対象に複数のAndroidManifest.xmlが含まれているとマージされる様子だったので、ライブラリープロジェクトの体裁にきちんとなっていないサブプロジェクトを含む際は要注意だと思った(apktoolとかいうapkをバラす便利ツールみたいなので確認してようやく気づいた)。

なんか他にもいくつか便利情報がある(サブプロジェクトのビルドタスクまで定義する方法とか、特定のjarファイルが重複してapkに含まれないようにする方法とか)けど、僕が書くことじゃない気がするので書かれるのを待とう。