[android] Crashlytics는 기본 충돌을 표시하지 않습니다

Crashlytics 기본 보고서

이것이 중복으로 표시되기 전에 가능한 모든 질문에서 모든 것을 시도했습니다. Java 충돌은 올바르게보고되지만 기본 라이브러리의 충돌에는 디버그 기호가 없습니다.

내가 시도한 것 :

./gradlew crashlyticsUploadSymbolsDevDebug // to upload the symbols manually
androidNdkOut 'build/intermediates/ndkBuild/devDebug/obj/local' //specify the ndk paths manually
androidNdkLibsOut 'build/intermediates/merged_native_libs/devDebug/out/lib'` //specify the ndk paths manually

현재 설정 :

종속성 :

implementation('com.crashlytics.sdk.android:crashlytics:2.10.1@aar') { transitive = true }

implementation 'com.crashlytics.sdk.android:crashlytics-ndk:2.1.1'

android.applicationVariants.all { variant ->
def variantName = variant.name.capitalize()
def task = task("ndkbuild${variantName}")
task.finalizedBy("crashlyticsUploadSymbols${variantName}")
}

crashlytics {
enableNdk true
manifestPath 'AndroidManifest.xml'
androidNdkOut 'build/intermediates/ndkBuild/devDebug/obj/local'
androidNdkLibsOut 'build/intermediates/merged_native_libs/devDebug/out/lib'
}

패브릭 종속성 :

buildscript {
repositories {
    maven { url 'https://maven.fabric.io/public' }
}

dependencies {
    // The Fabric Gradle plugin uses an open ended version to react
    // quickly to Android tooling updates
    classpath 'io.fabric.tools:gradle:1.31.2'
    }
}

패브릭이 설정되었으며 Java 계층과의 작업이 충돌합니다.

Fabric.Builder builder = new Fabric.Builder(this).kits(new Crashlytics(), new 
CrashlyticsNdk());`

문제 : 기본 충돌이보고되었지만 디버그 기호가 누락되었으며 누락 된 이유를 나타내는 오류 / 출력이 없습니다.

이것을 더 쉽게 재현 할 수 있도록 샘플 앱을 만들었습니다. Firebase에서 프로젝트를 만들고 google-services.json 파일을 붙여 넣고 빌드하기 만하면됩니다.
리포지토리에 링크



답변

다른 모듈의 디버그 기호 또는 구식 구성 이 원인 일 수 있습니다 .

다음과 같이 구성하십시오.

crashlytics {
    enableNdk true
    // If using the Android plugin for Gradle version 2.2.0+ with the externalNativeBuild DSL,
    // you should remove the androidNdkOut and androidNdkLibsOut properties, as these paths will
    // automatically be detected by the Fabric plugin.
    androidNdkOut 'obj'
    androidNdkLibsOut 'libs'
    manifestPath 'AndroidManifest.xml'
}

그러나 Fabric이 곧 종료되므로 Firebase Crashlytics 로 마이그레이션하는 것이 좋습니다 .

Crashlytics는 새로운 Firebase 전용 기능과 함께 Firebase에 통합되었습니다. 새로운 앱은 Firebase에서 Crashlytics를 사용하여 최신 업데이트 및 기능에 액세스해야합니다. Fabric Crashlytics 및 Fabric 대시 보드는 2020 년 3 월 31 일까지 기존 사용자가 사용할 수 있습니다.


답변