Androidをgradleでビルドさせる
gradle
AndroidStudioが公開され、ビルドシステムはgradleに移行する感じの風潮で、皆注目してる。 世間の流れにおいていかれないように、gradleでandroidプロジェクトをビルドできるようにためす。。
とりあえず、以下を読みながら試す。
http://tools.android.com/tech-docs/new-build-system/user-guide
gradle のインストール
groovyのrvm的なバージョン管理のプログラムがあるので、落とす。
$ curl -s get.gvmtool.net | bash
$ source "$HOME/.gvm/bin/gvm-init.sh"
gradleのインストール
$ gvm install gradle 1.6
プロジェクトの作成
とりあえず、既存のandroidコマンドでひな形を作る
$ android create project --target android-17 --path GradleSample --package me.mattak.gradle_sample --activity GradleSampleActivity --name GradleSample
antでビルドできるかチェック
$ cd GradleSample
$ ant debug install
gradleでビルド
以下を記述したbuild.gradleをAndroidManifest.xmlと同一のディレクトリにおく
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
apply plugin: 'android'
android {
buildToolsVersion "17.0"
compileSdkVersion 15
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aild.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
}
}
これでbuildできるはず. task一覧をチェック
$ gradle tasks
デバックビルドする
$ gradle installDebug
これで、いちどうまくいかなかった。
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileDebugAidl'.
> failed to find Build Tools revision 17.0.0
ので、sdkを更新したらうまくいった。 http://stackoverflow.com/questions/16619773/failed-to-import-new-gradle-project-failed-to-find-build-tools-revision-17-0-0
$ android
# Tools/Android SDK ToolsをRev. 22.0.1にする
やったね!