Crashlytics Gradle 플러그인의 최신 버전은 주 버전(v3.0.0)이며, 더 낮은 버전의 Gradle 및 Android Gradle 플러그인에 대한 지원을 중단하여 SDK를 현대화합니다. 또한 이 출시 버전의 변경사항은 AGP v8.1 이상의 문제를 해결하고 네이티브 앱 및 커스텀 빌드의 지원을 개선합니다.
최소 요구사항
Crashlytics Gradle 플러그인 v3의 최소 요구사항은 다음과 같습니다.
Android Gradle 플러그인 8.1 이상
Android 스튜디오의 최신 버전에서 Android Gradle 플러그인 업그레이드 어시스턴트를 사용하여 이 플러그인을 업그레이드하세요.Firebase의
google-services
Gradle 플러그인 4.4.1 이상
다음과 같이 프로젝트의 Gradle 빌드 파일에서 최신 버전을 지정하여 이 플러그인을 업그레이드하세요.
plugins { id("com.android.application") version "8.1.4" apply false id("com.google.gms.google-services") version "4.4.2" apply false ... }
plugins { id 'com.android.application' version '8.1.4' apply false id 'com.google.gms.google-services' version '4.4.2' apply false ... }
Crashlytics 확장 프로그램 변경사항
Crashlytics Gradle 플러그인 v3를 사용하면 Crashlytics 확장 프로그램에 다음과 같은 브레이킹 체인지가 포함됩니다.
defaultConfig
Android 블록에서 확장 프로그램이 삭제되었습니다. 대신 각 변형을 구성해야 합니다.지원 중단된
mappingFile
필드가 삭제되었습니다. 대신 병합된 매핑 파일은 이제 자동으로 제공됩니다.지원 중단된
strippedNativeLibsDir
필드가 삭제되었습니다. 대신 모든 네이티브 라이브러리에unstrippedNativeLibsDir
를 사용해야 합니다.unstrippedNativeLibsDir
필드를 누적하도록 변경했습니다.여러 디렉터리가 있는 예시 보기
buildTypes { release { configure<CrashlyticsExtension> { nativeSymbolUploadEnabled = true unstrippedNativeLibsDir = file("
MY/NATIVE/LIBS ") } } productFlavors { flavorDimensions += "feature" create("basic") { dimension = "feature" // ... } create("featureX") { dimension = "feature" configure<CrashlyticsExtension> { unstrippedNativeLibsDir = file("MY/FEATURE_X/LIBS ") } } } }uploadCrashlyticsSymbolFilesBasicRelease
작업은MY/NATIVE/LIBS
의 기호만 업로드하지만,uploadCrashlyticsSymbolFilesFeatureXRelease
는MY/NATIVE/LIBS
및MY/FEATURE_X/LIBS
의 기호를 모두 업로드합니다.폐쇄 필드
symbolGenerator
를 두 개의 새로운 최상위 필드로 대체했습니다.symbolGeneratorType
:"breakpad"
(기본값) 또는"csym"
의 문자열breakpadBinary
: 로컬dump_syms
바이너리 재정의 파일
확장 프로그램 업그레이드 방법 예시
전 |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGenerator( closureOf<SymbolGenerator> { symbolGeneratorType = "breakpad" breakpadBinary = file(" |
v3 |
buildTypes { release { configure<CrashlyticsExtension> { // ... symbolGeneratorType = "breakpad" breakpadBinary = file(" |
전 |
buildTypes { release { firebaseCrashlytics { // ... symbolGenerator { breakpad { binary file(" |
v3 |
buildTypes { release { firebaseCrashlytics { // ... symbolGeneratorType "breakpad" breakpadBinary file(" |