Skip to content

firebase_crashlytics: Crashlytics does not show Flutter origin of NDK crashes on Android #17014

Closed
@shahbazhashmi

Description

@shahbazhashmi

Is there an existing issue for this?

  • I have searched the existing issues.

Which plugins are affected?

Crashlytics

Which platforms are affected?

Android

Description

My Flutter Android app uses a third-party SDK that provides its own symbol files. Recently, we integrated the Crashlytics plugin and made the necessary changes on the Android native side.

The integration works perfectly for Flutter crashes, and even Android native crashes are being reported correctly. For SDK-related crashes, we upload the symbol files (provided by the SDK) using the CLI. These symbol files allow us to view symbolicated crash logs for the uploaded symbols. However, the Crashlytics console does not display the Flutter origin of these crashes. So how can I get Flutter origin of such crashes ?

Additionally, I see several entries on the console like the following:

libc.so (Missing BuildId xxxxx)
libflutter.so (Missing BuildId xxxxx)

How can I symbolicate these?

For context, I have not done any advanced configurations for Crashlytics on the Android native side. I have only added the required dependencies and plugins in the Gradle files.

Reproducing the issue

  1. Add firebase_crashlytics plugin in Flutter app which has a 3rd party SDK integrated.
  2. Add following changes in Android native side.
  3. Check crash log of the SDK crash on crashlytics console.

app build.gradle

plugins {
    id "com.android.application"
    id "kotlin-android"
    id "dev.flutter.flutter-gradle-plugin"
    id "com.google.firebase.crashlytics"
}

dependencies {
    // crashlytics dependencies based on product flavors : starts
    implementation(platform("com.google.firebase:firebase-bom:33.7.0"))
    implementation("com.google.firebase:firebase-crashlytics-ktx")
    implementation("com.google.firebase:firebase-crashlytics-ndk")
    // crashlytics dependencies based on product flavors : ends
}

settings.gradle

plugins {
    id "dev.flutter.flutter-plugin-loader" version "1.0.0"
    id "com.android.application" version '8.7.2' apply false
    id "org.jetbrains.kotlin.android" version "2.0.0" apply false
    id "com.google.firebase.crashlytics" version "3.0.2" apply false
}

Firebase Core version

3.8.1

Flutter Version

3.24.5

Flutter dependencies

Expand Flutter dependencies snippet
  firebase_crashlytics: ^4.2.0
  firebase_core: ^3.8.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions