谷歌 Fabric:UiAutomation未连接

54
在将应用程序部署到Google Play Beta后,我在Crashlytics中看到了以下问题(6-7个用户受到影响)。

部署应用程序到 Google Play Beta 后,在 Crashlytics 中出现以下问题(受影响的用户数为 6 - 7 人)

Fatal Exception: java.lang.IllegalStateException: UiAutomation not connected!
   at android.app.UiAutomation.throwIfNotConnectedLocked(UiAutomation.java:971)
   at android.app.UiAutomation.disconnect(UiAutomation.java:237)
   at android.app.Instrumentation.finish(Instrumentation.java:222)
   at android.support.test.runner.MonitoringInstrumentation.finish(MonitoringInstrumentation.java:351)
   at android.support.test.runner.AndroidJUnitRunner.finish(AndroidJUnitRunner.java:405)
   at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:394)
   at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1960)

看起来是Google测试设备。有修复的想法吗?


这个有任何消息吗?我也是。谢谢。 - azurh
这里也一样,有什么新消息吗? - eggcaker
4
有更新,Firebase 的工程师回复了我们的邮件,他们正在查看这个问题。 - Vitalii
我也看到了同样的情况。我的设备看起来也像是Google的测试设备。你能否确认这些崩溃问题在Beta版之外不存在,即最终发布版本? - Martin Price
1
Google的示例代码似乎存在相同的问题,因为在该仓库上有一个未解决的问题:https://github.com/googlesamples/android-testing/issues/89 - Martin Price
显示剩余2条评论
4个回答

29

看起来没有什么可担心的(不要依赖于被接受的答案,并且不要删除您的测试),因为有报告称在创建Google Play商店的预启动报告时发生了崩溃,其中执行了一些UI自动化测试。如果您跟踪了出现此错误的设备,则会发现所有路径都通向预启动报告。

您可以在此处了解有关预启动报告的更多信息。


7

看起来这个崩溃与您的应用程序中的UI测试有关。如果您没有进行任何UI测试,并且在创建项目时自动添加了默认设置,您应该从build.gradle文件的defaultConfig中删除testInstrumentationRunner这一行。

  defaultConfig {
   ....
   testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
} 

在依赖中使用androidTestCompile、testCompile


dependencies {
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', 
{
    exclude group: 'com.android.support', module: 'support-annotations'
})
testCompile 'junit:junit:4.12'
...

12
如果你有测试,怎么办 o.O :D - Jemshit Iskenderov
确实,如果您有测试怎么办?我不确定普通用户会想到这一点,因为在他们的情况下,仪器运行程序不应该被调用。我相信这仅限于Google测试设备,但我仍需要确认... - Martin Price
1
我删除了那些代码行,但在生产环境中仍然报告了异常。 - Juan Cruz Soler
2
我在 build.gradle 中没有这些行,但我开始看到问题所在。 - 3c71

1
有趣的是,我的应用在发布之前被 Google 测试时发生了崩溃。我真的不知道 Google 团队在做什么。

1
一件事是肯定的:您在UI上有问题。在大多数情况下,当您显示一个进度对话框并持续显示太长时间时,就会出现这种情况。在这种情况下,Google爬虫会超时并引发异常。 我的建议是:确保不要用无限对话框阻塞UI。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接