【发布时间】:2018-04-27 03:56:34
【问题描述】:
在旧的崩溃报告中 - 有一种简单的上传方式。我在 Crashlytics 部分没有找到它
【问题讨论】:
标签: firebase crashlytics firebase-crash-reporting
在旧的崩溃报告中 - 有一种简单的上传方式。我在 Crashlytics 部分没有找到它
【问题讨论】:
标签: firebase crashlytics firebase-crash-reporting
更新: 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.**
【讨论】:
-printmapping mapping.txt 应该从哪个配置文件中删除?
-printmapping <filename> 可以在app/proguard-rules.pro找到
-printmapping mapping.txt 以将其自动上传到 Firebase,则不会生成该文件,并且我无法在 Play 管理中心手动上传。
来自 Firebase 的 Mike 在这里。 Firebase 中的 Crashlytics 不提供在构建流程之外上传映射文件的方法。我个人很好奇,你经常使用手动上传吗?
【讨论】:
-printmapping mapping.txt 以便不会生成该文件并且 Crashlytics 可以做它的事情。我的 pro 文件中从未有过该行,但仍然会生成 mapping.txt,而且我从未见过经过去混淆处理的崩溃报告。对这个怪癖有什么见解吗?干杯
如果您已按照指示启用自动上传,然后构建应用程序,您仍然会看到在 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,您将获得有关原因的一些提示。
【讨论】:
:uploadCrashlyticsMappingFileRelease 失败时发生的,因此您可以在日志中查找它以确认它是否适用于 CI。目前,手动上传文件似乎是 Firebase Crashlytics 中缺少的功能,因为它在本周仍处于打开状态:? github.com/firebase/firebase-android-sdk/issues/…
在您的应用级 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
【讨论】: