고돗 플러그인 종속성 해결 build.gradle

 // 기존에 있던 configurations { ... } 블록 아래에 추가하세요

configurations.all {

    resolutionStrategy {

        // 모든 설정(dev, mono 등)에 대해 아래 버전을 강제로 사용하도록 명령

        force 'com.google.android.gms:play-services-ads:22.6.0'

        force 'com.google.gms:google-services:4.3.15'

    }

}


이거로 맞춰주면됨.

유니티에서 편하게 종속성 통일하는 방법이랑 같다고 보면됨.

대신 sdk바뀌면 뭐 버전을 다르게 해야할 듯.





고도는 병렬처리해서


google-service.json파일도 경로 지정해줌.

밑에 경로에 해당 주소 입력

// 1. 빌드 직전에 외부 경로에서 google-services.json을 강제로 수급함

tasks.configureEach { task ->

    if (task.name.contains("process") && task.name.contains("GoogleServices")) {

        task.doFirst {

            def jsonPath = "경로"

            def targetDir = file("src/standard/") 

            

            if (!targetDir.exists()) targetDir.mkdirs()

            

            println("--- [Senior Logic] Copying google-services.json to ${targetDir} ---")

            copy {

                from jsonPath

                into targetDir

                rename { "google-services.json" }

            }

        }

    }

}


// 2. 기존의 순서 강제 로직 (Race Condition 방지)

tasks.configureEach { task ->

    if (task.name.startsWith("extractDeepLinks")) {

        def googleTaskName = task.name.replace("extractDeepLinks", "process") + "GoogleServices"

        def googleTask = tasks.findByName(googleTaskName)

        if (googleTask) {

            task.mustRunAfter(googleTask)

        }

    }

}

이코드를  build.gradle에 작성해주고,


안드로이드 스튜디오에서 android -build<-이 빌드파일로 열고


종속성 싱크로 안맞는 버전 확인.
나는 8.6.1인데 8.4.2로 해야한다고해서 
config파일과 gradle wraper


수동으로 고쳐주고 빌드하면 잘됨.


유니티에서 종속성 간단히 해결 하던것을 직접하다니 ㅠ



아놔 파이어베이스는 jdk가 또 호환이 안되는듯. 최악으로 다시 26버전으로내리고 lib파일도 다시 업데이트해야함. 그래서

깃허브의 액션기능 활용.





댓글

이 블로그의 인기 게시물

고도엔진을 안드로이드애플리케이션에 임베드하는거 공부하기

[코틀린] 고도엔진 안드로이드 플러그인 최종정리

godot용 android plugin 제작