Resource entry com.crashlytics.android.build_id is already defined

I have an app of two flavors: Debug and Release, with two manifests and two distinct packages com.myapp.release and com.myapp.debug for each flavor, respectively.

After migration from Fabric.io to Firebase Crashalytics, a Gradle warning appeared about duplicate com_crashlytics_build_id.xml:

/home/.../app/build/generated/fabric/res/flavor1/debug/values/com_crashlytics_build_id.xml  [string/com.crashlytics.android.build_id] /home/.../app/build/generated/crashlytics/res/flavor2/debug/values/com_crashlytics_build_id.xml: Error: Duplicate resources

Fix: in build.gradle

remove

dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
  }

remove

apply plugin: 'io.fabric'

Fix different io.fabric.tools:gradle versions

Different io.fabric.tools:gradle versions in the app and library caused this for me.

I'd the following in the app's build.gradle:

classpath 'io.fabric.tools:gradle:1.19.2'

And the following in the library's build.gradle:

classpath 'io.fabric.tools:gradle:1+'

I changed both to following to fix it:

classpath 'io.fabric.tools:gradle:1.19.2'

PS: We need better error messages. As programmers we waste of lot of time when the error messages are not only bad, but as in this case, downright misleading.


I had the same problem, one of my dependencies had mistakenly added the com.crashlytics.android.build_id via craslytics's auto genereted xml file.

It was a library project and deleting :

library/src/main/assets/crashlytics-build.properties
library/src/main/res/values/com_crashlytics_export_strings.xml

fixed it for me.


I had the same problem.

My mistake is I add fabric plugin and firebaseCrashlytics plugin on my gradle. (reason : plugin build id duplicate crash)

You must fix select A and B plugin.

A : apply plugin: 'com.google.firebase.crashlytics

B : apply plugin: 'io.fabric