LoginSignup
4
4

More than 5 years have passed since last update.

Gradleについて調べる

Last updated at Posted at 2017-12-07

Gradleってなんぞ

参考サイト:

Gradle User Guide の8章あたりを見ると幸せになれる。
【AndroidStudio 3.0】「flavor dimension」とは何?


Gradleとは

Javaでのビルドツールの一つ。
他のビルドツールの例 make、ant、maven、sConsなど
ビルドとは、「ソースコード」を「ソフトウェア」に変換すること。

…だそうです。バリバリ書いたコードをいい感じに処理してくれるやつ。

Gradleの書き方

buildscript

ビルドスクリプト。このGradleのファイル自体が何に依存してるのか。(=何が必要なのか)を記述する場所。

repositories
リポジトリっていうのはただのファイルの集合。開発時に使えるいろいろなファイルが置いてある。便利。
Mavenさんとかjcenterさんていういい人がいる。

buildscript {
    repositories{
        mavenCentral() // Mavenのセントラルリポジトリを利用しますよー
        jcenter() // jcenterのリポジトリを利用しますよー
}

dependencies

依存関係。いろいろ書いていく。

apply plugin

プラグイン適用。プラグインは追加の便利機能。
例)

apply plugin: 'com.android.application'

flatDir

フラットディレクトリ。
ローカルファイルシステム(=手元のPC)上のディレクトリをリポジトリとして使用することができるんだそうな。

flatDir {
    dirs 'libs' // libsっていうディレクトリをリポジトリとして使用するよー。
}

android

アンドロイド。メインの記述の部分と考えればよい。

complileSdkVersion

コンパイルするアンドロイドAPIのバージョン。

ext

変数を定義できる。

android {
    compileSdkVersion 24
    buildToolsVersion 24
}

flavorDimensions

状況によってビルドの内容を変更したい場合に使う。例えば、開発時と本番環境UP時でコンパイルのバージョンを変えたい場合とか。 基本は"default"と記述しておく。

android {
flavorDimensions "default"
}

defaultConfig

デフォルトコンフィグ。最小APIやらターゲットSDKバージョンやらを指定する。

minSdkVersion

「これが限界ぎりぎりのバージョンだよ!」。これより低いAPIバージョンだと動かないよ!

targetSdkVersion

「このバージョンなら動くよ!」という指定。指定なしだとminSdkVersionが適用。

applicationId

アプリケーション毎にユニークなID。これが同じなら「同じアプリ」という意味になる。

versionCode

管理側のバージョン。GooglePlayなどにアップする際に変える必要あり。ユーザーからは見えない。

versionName

アプリを使用しているユーザーに見せるためのバージョン。変えなくても死なない。

defaultConfig {
    minSdkVersion 14
    targetSdkVersion 15  
    applicationId "com.example.app"
    versionCode 1
    versionName "1.0.0"
}

aaptOptions

apkを作る際に除外するファイルを指定?

additionalParameters

わからん。謎。

lintOptions

Android Studioにはlintっていう検査ツールがある。これでコードの構造や品質のチェックができる。そのオプションを指定する。

lintOptions {
    abortOnError false // Lintでエラー出ても無視してビルド続けちゃうよ!
}

packageingOptions

なんかこう、外部のjarファイルを依存関係でとってきたときに競合が起きるのを防ぐらしい。
エラーが起きたら追加していくイメージ

packageingOptions {
    exclude 'LICENSE.txt' // 「LICENSE.txt」っていうファイルを除外しますよー
}

sourceSets

javaのソースコードがデフォルトの場所(src/main/javaとか)以外に置かれている場合、それぞれの場所を指定して「追加」することができる。

def

ローカル変数。定義されている場所でしか使えない。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4