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