Я делаю тесты с использованием пользовательского интерфейса UI automator FW. Я пытаюсь обнаружить утечку памяти при изменении ориентации устройства с помощью следующего кода:Применяется изменение ориентации ожидания пользовательского интерфейса UI
InstrumentationRegistry.getInstrumentation().getUiAutomation()
.setRotation(orientation);
Это меняет ориентацию устройства, но мои вопросы это:
Что такое правильный способ (кроме сна) ждать, что устройство законченного изменение ориентации?
Я пробовал:
mDevice.wait(Until.hasObject(By.pkg(<MyPackage>).depth(0)), LAUNCH_TIMEOUT);
Иногда работает, иногда нет.
mDevice.waitForIdle();
Не работает вообще.
Любые другие способы ожидания?
Я пробовал, но кажется, что он всегда ждет 5000 мс. Мое решение работает быстрее, но не пропускает ориентации. – vadimvolk
Просто имейте в виду, что если имя пакета не совпадает, оно будет возвращено немедленно (как указано в API). Поэтому вместо «null» вы должны использовать имя пакета своей активности. Он может все еще ждать обновления окна. Поэтому, если у вас нет других источников обновлений, это может сработать (по крайней мере, для меня). –