In the old Crash reporting - there is easy way to upload. i didn't find it in the Crashlytics section
UPDATE: Firebase update their docs: see here
There is no need anymore to manually upload mapping file.
1 - To preserve the info Crashlytics needs for readable crash reports, add the following lines to your config file:
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
2 - To let Crashlytics automatically upload the ProGuard or DexGuard mapping file, remove this line from the config file (app/proguard-rules.pro):
-printmapping mapping.txt
For faster builds with ProGuard, exclude Crashlytics. Add the following lines to your config file:
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**
-printmapping mapping.txt
It should be removed from which config file? –
Donald -printmapping <filename>
can be found in app/proguard-rules.pro
–
Entrench -printmapping mapping.txt
to automatically upload it on Firebase, the file is not generated and I can't manually upload it on the Play Console. –
Gorgias -keepattributes SourceFile
somehow defeat the purpose of obfuscation? –
Latia -renamesourcefileattribute SourceFile
to your proguard configuration. Crashlytics will still upload your mapping file and in fact it still gets the original source file name, but it's not stored in the APK –
Aristotle Mike from Firebase here. Crashlytics in Firebase does not offer a way to upload mapping files outside of the build flow.
-printmapping mapping.txt
so that the file isn't generated and Crashlytics can do its thing. I have never had that line in my pro file but mapping.txt is still generated and I have never seen deobfuscated crash reports. Any insight on this quirk? Cheers –
Why Crashlytics had a problem uploading the deobs file
. I re-ran the build and it uploaded OK this time, but it's a shame it fails in a non-obvious way and there's no way to manually upload. The existing crash isn't deobfuscated even though the re-run build has now uploaded it OK. I guess I just have to manually run retrace for this existing crash. In future I suppose I should tail the crashlytics log to make sure the upload works. –
Disposable -printmapping mapping.txt
@MikeBonnell We're building and deploying APK to Google Play from a jenkins/docker pipeline. We don't have any printmapping
in our rules (custom or the default android), yet its created, and we archive it within Jenkins, but its NOT uploading to Crashlytics. Otherwise, the Triple-T plugin appears to be pushing it to Google Play console.. –
Ephemeris mapping.txt
is generated automatically.. printmapping
has gone through a stage, at least, where its not honored. This doesn't reconcile well with the advice to remove the rule so that the plugin will upload it automatically –
Ephemeris -printmapping mapping.txt
anywhere, and still I've noticed obfuscated stuff of my app on crashes, on Firebase Crashlytics. How come? Also mapping.txt
is generated anyway, so I actually upload it to Play Console website. –
Marked If you have followed the indications to enable the automatic upload then build the app and you still see the stack traces obfuscated in Firebase you should check the log files:
On Linux / Windows: /.crashlytics/com.crashlytics.tools/crashlytics.log
On Mac: ~/Library/Caches/com.crashlytics/com.crashlytics.tools/crashlytics.log
Look for the latest entry with: Uploading deobfuscation file
And try to find the result of the operation like: Deobfuscation file(s) uploaded
or Crashlytics had a problem uploading the deobs file
and you will get some hints about the cause.
Set the firebaseCrashlytics.enableMappingFileUpload
Gradle extension property to true in your app-level build.gradle file.
// To enable Crashlytics mapping file upload for specific product flavors:
flavorDimensions "environment"
productFlavors {
staging {
dimension "environment"
...
firebaseCrashlytics {
mappingFileUploadEnabled false
}
}
prod {
dimension "environment"
...
firebaseCrashlytics {
mappingFileUploadEnabled true
}
}
}
for more details visit Click here
Finally, Firebase provided the option to enable mapping files manually
crashlytics:mappingfile:upload
command? I don't get it what should I put to --resource-file=
option? –
Lewls © 2022 - 2025 — McMap. All rights reserved.
:app:crashlyticsStoreDeobsRelease
:app:crashlyticsUploadDeobsRelease
during the build. But all callstacks in firebase ui are obfuscated. – Anurag