Androidアプリ開発で活躍必至!?
ビルドツールGradle
2
Gradleって
何??
3
Gradleとは
●
Groovyで動作するビルドツール
– 雰囲気としてはAntとMavenの良い所取り
– Android Studioが正式にサポート
– フリー && オープンソース
4
なぜ
Gradleか??
5
お題に選んだ理由
●
”Android”でググるとたくさん出る
– どうやら熱い(!?)ツールらしい
●
単純に興味があった
– 私自身勉強中
– LTついでにまとめときたい
6
Q: 使ってる人??
7
どこが
良いの??
8
良い所
可読性と保守性
– Groovy > XML
●
スクリプト != 設定ファイル
●
難ならJavaやScalaでも
高い自由度
●
無償版と有償版を同時にビルドとか
9
さらに
移行が容易
– Antもファーストオブジェクト
●
書いたモノを無駄にせず、そのまま利用可
依存関係の管理
– 様々な依存関係の解決を念頭にしている
10
どう使うの??
11
インストール手順
Windows
●
zipファイルをダウンロード
– http://www.gradle.org/downloads
– 解凍 && 移動
●
環境変数の追加
– GRADLE_HOME/bin
●
バージョン確認(=動作確認)
12
インストール手順
Linux
$ curl -s get.gvmtool.net | bash
$ gvm install groovy
$ gvm install gradle
$ gradle -v
13
完了!!
14
動かしてみた
15
プロジェクト
Android メモ帳あぷり
– テキストファイル記述・記録・編集
– カメラ/Twitter
– 2バージョンリリース
●
ツイッター機能有り
●
ツイッター機能無し
16
ビルド手順①
●
ディレクトリ構造の変更
– Mavenと同じ
●
スクリプトbuild.gradleを記述
– ちょっとしたDSL
●
コマンドを実行
17
ビルド手順②
$ gradle tasks
$ gradle wrapper
$ ./gradlew build
18
build.gradle①
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.0'
}
}
19
build.gradle②
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
productFlavors {
free {
packageName "com.sample.memo.free"
}
pro {
packageName "com.sample.memo.pro"
}
}
20
build.gradle③
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['app/src/main/java']
res.srcDirs = ['app/src/main/res']
}
free {
res.srcDirs = ['app/src/free/res']
}
pro {
res.srcDirs = ['app/src/pro/res']
}
}
}
21
ソースコード
【http://github.com/amayaw9/Memo】
– メモ帳あぷりのソースコード
– Gradleのビルドスクリプト
22
まとめ
23
まとめ
感想
– Gradleはとても優秀
– Java系のプロジェクトで便利っぽい
– 2バージョンリリースぐらいなら簡単に出来る
参考
– HP【http://www.gradle.org/】
– フォーラム【http://forums.gradle.org/gradle】
24
ご清聴ありがとうございました。

Androidアプリ開発で活躍必至!? ビルドツールGradle