在旧的Crash报告中 - 有一种简单的上传方式。我没有在Crashlytics部分找到它
答案 0 :(得分:30)
更新:Firebase更新了他们的文档:see here
不再需要手动上传映射文件。
1 - 要保留Crashlytics对可读崩溃报告的信息,请在配置文件中添加以下行:
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
2 - 要让Crashlytics自动上传ProGuard或DexGuard映射文件,请从配置文件中删除此行( app / proguard-rules.pro ):
-printmapping mapping.txt
要使用ProGuard加快构建速度,请排除Crashlytics。添加 以下行到您的配置文件:
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**
答案 1 :(得分:13)
Mike来自Firebase。 Firebase中的Crashlytics不提供在构建流程之外上传映射文件的方法。我个人很好奇,您是否经常使用手动上传?
答案 2 :(得分:1)
如果您已按照指示启用了自动上传功能,然后构建了该应用程序,但仍然看到Firebase中混淆了堆栈跟踪,则应检查日志文件:
在Linux / Windows上: /.crashlytics/com.crashlytics.tools/crashlytics.log
在Mac上: 〜/ Library / Caches / com.crashlytics / com.crashlytics.tools / crashlytics.log
使用以下内容查找最新条目:Uploading deobfuscation file
尝试找到诸如Deobfuscation file(s) uploaded
或Crashlytics had a problem uploading the deobs file
之类的操作结果,您将获得有关原因的一些提示。
答案 3 :(得分:0)
在您的应用级build.gradle文件中将firebaseCrashlytics.enableMappingFileUpload
Gradle扩展名属性设置为true。
// 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
}
}
}
有关更多详细信息,请访问Click here