갑자기 하던 프로젝트에서 구글 파이어베이스를 연동해야 할 일이 있어서 연동하다가, 플러그인도 최신 버전으로 업데이트 되면서 연동방식이 변동되었다는걸 깨달았다.
기존에서 안드로이드에서 구글 파이어베이스를 연동하는 법은 다음과 같았다.
-build.gradle(프로젝트 단위)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = "1.4.21"
repositories {
google()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:4.1.1"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.3.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
...
-build.gradle(모듈 단위)
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'com.google.gms.google-services'
}
...
근데 안드로이드를 업데이트 하거나, 안드로이드를 최근에 깔았다면 이런 방식이 되지 않을 것이다.
안드로이드 플러그인 7.1 이후에 프로젝트 단위의 build.gradle이 변경되면서 방식이 변경되었다.
빌드 스크립트로 의존성을 거는 대신 플러그인으로 빌드하고, 저장소는 setting.gradle로 확인한다.
22.12.09 현재 한국어 기준 파이어베이스 공식 문서가 업데이트 되거나 하진 않았다 ^^;
그럼 어떻게 바꾸느냐?
-build.gradle(프로젝트 단위)
plugins {
id 'com.android.application' version '7.2.0' apply false
id 'com.android.library' version '7.2.0' apply false
id 'com.google.gms.google-services' version '4.3.10' apply false
}
-setting.gradle
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}
-build.gradle(모듈 단위)
plugins {
id 'com.android.application'
id 'com.google.gms.google-services'
}
...
해당 방식으로 의존성을 빌드해야한다.
반응형