Как подождать открытия другой активити?

Хочу сделать тесты UI для андроид приложения - прокликивание нужных кнопок, проверка, что все выводится нормально и не сломались используемые методы API.

На экране логина делаю performClick на кнопке "Войти", жду waitForIdleSync(), проверяю что открылась MainActivity

При нажатии на кнопку открывается ProgressBar, который крутится пока в фоне выполняются запросы авторизации, получения настроек и прочие. После выполнения всех запросов ProgressBar закрывается и открывается нужная активити.

Проблема в том, что idle наступает сразу после открытия ProgressBar. А как подождать открытия нужной активити?

Пока вижу только вариант с созданием коллбека в активити авторизации setOnRequestsDoneListener, хотел узнать есть ли лучшие идеи
  • Вопрос задан
  • 119 просмотров
Пригласить эксперта
Ответы на вопрос 1
orcDamnar
@orcDamnar
Java, C/C++, Android SDK
ну так все правильно. вы запускаете диалог, и активити, его запустившее - входит в IDLE. Вы, видимо, запускаете AsynkTask, и в onPostExecute стартуете MainActivity? вот как бы после этого и нужно проверять... тоесть ProgressBar.dismis; waitForIdleSync(); startActivity();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы