android - 从 Android 插桩测试发送 Crashlytics 报告

标签 android firebase crashlytics google-fabric crashlytics-android

我正在 Firebase 测试实验室运行我的插桩测试,并希望将非致命异常报告给 Crashlytics。

但是,调用 Crashlytics.logException() 不会立即发送报告。启用 core.debuggable(true) 后,我在发送报告时看到了这个:

D/CrashlyticsCore: Crashlytics is logging non-fatal exception "java.lang.Throwable: java.lang.Throwable" from thread main

但在我重新启动应用程序之前,该报告在 Crashlytics 仪表板上是不可见的,然后我看到:

D/CrashlyticsCore: Checking for crash reports...
D/CrashlyticsCore: Found crash report /data/user/0/.../files/.Fabric/com.crashlytics.sdk.android.crashlytics-core/nonfatal-sessions/....cls
D/CrashlyticsCore: Attempting to send 1 report(s)
D/CrashlyticsCore: Adding single file ....cls to report ...
D/CrashlyticsCore: Sending report to: https://reports.crashlytics.com/spi/v1/platforms/android/apps/org.dasfoo.delern.instrumented/reports
D/CrashlyticsCore: Create report request ID: null
D/CrashlyticsCore: Result was: 202
I/CrashlyticsCore: Crashlytics report upload complete: ...
D/CrashlyticsCore: Removing report at /data/user/0/.../files/.Fabric/com.crashlytics.sdk.android.crashlytics-core/nonfatal-sessions/....cls
D/CrashlyticsCore: Checking for crash reports...
D/CrashlyticsCore: No reports found.

这对于生产用例来说并不理想,但它至少可以在用户重新启动应用程序时发挥作用。在测试中,这永远不会奏效,因为 Firebase 测试实验室不会重启应用(重启应用意味着测试将失败)。

是否有任何解决方法允许 Crashlytics 从仪器测试发送非致命报告?

使用过的包:

com.crashlytics.sdk.android:crashlytics:2.6.8@aar
io.fabric.tools:gradle:1.24.0

UPD:改写了问题和标题。我正在寻找改变 Crashlytics 默认行为的选项,因为它似乎是一个合理的功能。

最佳答案

没有办法报告当前 session 中的非致命事件。需要重新启动应用程序才能将非致命事件报告给 Crashlytics。

关于android - 从 Android 插桩测试发送 Crashlytics 报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47377319/

相关文章:

android - Firebase 手机身份验证仅在 Release模式下不启动 OTP,但即使在为 Release模式添加 sha1 后也可以在 Debug模式下工作

android - 混淆器异常 java.io.IOException : Duplicate zip entry

android - 如何从 Android Studio 同时在所有连接的设备或模拟器中运行 android 应用程序?

Android 在超过 5 个 Activity 中设置常量 Button

带有自定义 UITableViewCell 的 iOS FirebaseUI

firebase - 如何将我的标记从Firestore检索到Google Map?

android-studio - 分支io和crashlytics的Gradle构建错误

android - Crashlytics 缺少一些自定义日志

iOS 8 在 UVManager.m 中崩溃,这不是我的类(class)之一

android - 我在 android studio 中实现菜单抽屉时出错