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

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

Upload: amayaw9

Post on 24-Jun-2015

511 views

Category:

Software


4 download

DESCRIPTION

バイト先でLTしたGradleネタ、簡単な導入~インストール手順~Flavorを用いた2バージョンビルドまでを示します。

TRANSCRIPT

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

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

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

2

Gradleって何??

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

3

Gradleとは● Groovyで動作するビルドツール

– 雰囲気としてはAntとMavenの良い所取り– Android Studioが正式にサポート– フリー && オープンソース

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

4

なぜGradleか??

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

5

お題に選んだ理由● ”Android”でググるとたくさん出る

– どうやら熱い(!?)ツールらしい

● 単純に興味があった– 私自身勉強中– LTついでにまとめときたい

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

6

Q: 使ってる人??

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

7

どこが良いの??

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

8

良い所

可読性と保守性– Groovy > XML

● スクリプト != 設定ファイル● 難ならJavaやScalaでも

高い自由度● 無償版と有償版を同時にビルドとか

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

9

さらに

移行が容易– Antもファーストオブジェクト

● 書いたモノを無駄にせず、そのまま利用可

依存関係の管理– 様々な依存関係の解決を念頭にしている

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

10

どう使うの??

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

11

インストール手順

Windows● zipファイルをダウンロード

– http://www.gradle.org/downloads– 解凍 && 移動

● 環境変数の追加– GRADLE_HOME/bin

● バージョン確認(=動作確認)

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

12

インストール手順

Linux

$ curl -s get.gvmtool.net | bash

$ gvm install groovy

$ gvm install gradle

$ gradle -v

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

13

完了!!

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

14

動かしてみた

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

15

プロジェクト

Android メモ帳あぷり– テキストファイル記述・記録・編集– カメラ/Twitter– 2バージョンリリース

● ツイッター機能有り● ツイッター機能無し

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

16

ビルド手順①● ディレクトリ構造の変更

– Mavenと同じ● スクリプトbuild.gradleを記述

– ちょっとしたDSL● コマンドを実行

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

17

ビルド手順②

$ gradle tasks

$ gradle wrapper

$ ./gradlew build

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

18

build.gradle①buildscript {

repositories {

mavenCentral()

}

dependencies {

classpath 'com.android.tools.build:gradle:0.9.0'

}

}

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

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

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

21

ソースコード

【http://github.com/amayaw9/Memo】– メモ帳あぷりのソースコード– Gradleのビルドスクリプト

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

22

まとめ

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

23

まとめ

感想– Gradleはとても優秀– Java系のプロジェクトで便利っぽい– 2バージョンリリースぐらいなら簡単に出来る

参考– HP【http://www.gradle.org/】– フォーラム【http://forums.gradle.org/gradle】

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

24

ご清聴ありがとうございました。