Google Fabric: UiAutomation не подключен

После развертывания приложения в бета-версии Google Play я вижу следующую проблему в 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. Есть идеи по исправлению?


person Vitalii    schedule 17.12.2017    source источник
comment
Мы связались со службой поддержки Fabric два дня назад, пока ответа нет...   -  person Vitalii    schedule 19.12.2017
comment
есть новости по этому поводу? То же самое. Спасибо.   -  person azurh    schedule 22.12.2017
comment
ничего нового, не отвечают   -  person Vitalii    schedule 22.12.2017
comment
тоже самое, есть новости?   -  person eggcaker    schedule 03.01.2018
comment
Некоторое обновление, инженер формы Firebase ответил на нашу почту, они смотрят на проблему   -  person Vitalii    schedule 08.01.2018
comment
Я вижу то же самое. Мои тоже похожи на тестовые устройства Google. Вы можете подтвердить, что сбоев не существует вне бета-версии. то есть окончательный выпуск?   -  person Martin Price    schedule 16.02.2018
comment
Образец кода Google, похоже, имеет ту же проблему, учитывая открытую проблему в репозитории: github. com/googlesamples/android-testing/issues/89   -  person Martin Price    schedule 16.02.2018


Ответы (4)


Похоже, этот сбой связан с тестированием пользовательского интерфейса в вашем приложении. Если у вас нет тестирования пользовательского интерфейса и есть только настройки по умолчанию, которые добавляются автоматически при создании проекта, вам следует удалить из вашего build.gradle строку testInstrumentationRunner в defaultConfig.

  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'
...
person E I    schedule 13.01.2018
comment
а если у тебя есть тесты o.O :D - person Jemshit Iskenderov; 12.02.2018
comment
Действительно, что, если у вас есть тесты? Я не уверен, что это произойдет с обычными пользователями, так как в их случае инструментарий запуска не должен вызываться. Я считаю, что это относится только к тестовым устройствам Google, но я хотел бы получить подтверждение по этому поводу... - person Martin Price; 16.02.2018
comment
Я удалил эти строки, но все еще получаю сообщение об этом исключении в производстве. - person Juan Cruz Soler; 02.11.2018
comment
У меня нет ни одной из этих строк в build.gradle, но я начинаю видеть проблему. - person 3c71; 27.02.2019

Кажется, что не о чем беспокоиться (не полагайтесь на принятый ответ и не удаляйте свои тесты), потому что сообщалось о сбоях при создании отчета о предварительном запуске для Google. play store, где были выполнены некоторые тесты автоматизации пользовательского интерфейса. Если вы отследите устройства, на которых возникла эта ошибка, то увидите, что все пути ведут к отчету о предзапуске.

Вы можете узнать больше об отчете перед запуском здесь

person ares    schedule 22.02.2019

Одно можно сказать наверняка: у вас проблема с пользовательским интерфейсом. В большинстве случаев это происходит, когда вы показываете диалоговое окно прогресса, которое отображается слишком долго. В этом случае сканер Google выходит из-под контроля и выдает исключение. Мой совет: не блокируйте пользовательский интерфейс бесконечными диалогами.

person Mariusz Wiazowski    schedule 07.03.2019

Самое смешное, что я получаю этот сбой, когда мое приложение тестируется Google перед публикацией. Я действительно не знаю, что делает команда Google.

person Atef Farouk    schedule 07.12.2019