dependencies {
implementation "com.android.support:appcompat-v7:$rootProject.supportLibraryVersion"
implementation "com.android.support:support-v4:$rootProject.supportLibraryVersion"
implementation "com.android.support:design:$rootProject.supportLibraryVersion"
「変数を使ってまとめました!」とか言ってるけど。
きもいですよ。
そもそも、定義の位置がヘボいのですよ。
書いてたのは私です。
以下のように書いてました。
root/build.gradle
ext {
minSdkVersion = 24
targetSdkVersion = 27
compileSdkVersion = 27
buildToolsVersion = '27.0.2'
supportLibraryVersion = '27.1.0'
firebaseVersion = '11.8.0'
これのせいで、「${rootProject.firebaseVersion」とか「rootProject.ext.***」とかダラダラ書く羽目になるようです。
stackoverflow も今やゴミのだらけでどれが正しいのか分かりづらいです。
神はこのように書いていた。
root/build.gradle
buildscript {
ext.buildConfig = [
'compileSdk': 27,
'minSdk': 24,
'targetSdk': 27
ext.versions = [
'supportLibrary': '27.1.0',
'kotlin': '1.2.30',
'okhttp': '3.10.0',
'retrofit': '2.3.0',
'kotshi': '1.0.1',
'dagger': '2.15',
ブロック buildscript {} 内に map ですっきり記述しています。
module/build.gradle
android {
compileSdkVersion buildConfig.compileSdk
defaultConfig {
minSdkVersion buildConfig.minSdk
targetSdkVersion buildConfig.targetSdk
versionCode buildConfig.versionCode
versionName buildConfig.versionName
// ....
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:${versions.kotlin}"
implementation "com.android.support:appcompat-v7:${versions.supportLibrary}"
implementation "com.android.support:support-v4:${versions.supportLibrary}"
implementation "com.android.support:design:${versions.supportLibrary}"
implementation "com.google.firebase:firebase-core:${versions.firebase}"
implementation "com.google.firebase:firebase-auth:${versions.firebase}"
定形なテンプレートとして使えます。
参照する際は、「rootProject」とか「ext」の単語は不要です。
関連の以下も必須だろうと思います。
サポートライブラリのバージョンを揃える
👉 【Gradle Version Catalog】libs.versions.toml キー名の形式 camelCase vs kebab-case
関連ワード:
Android
・
Google
・
Gradle
・
おすすめ
・
これはすごい
・
アプリ
・
ライブラリ
・
開発
・
build.gradle
・
versions