Como localizar o elemento no UIautomator se o teclado nativo vier antes do seu aplicativo?

Conforme o requisito do projeto, estou trabalhando na automação de aplicativos móveis. O problema não surge quando eu executei o mesmo código que funcionou bem no emulador, mas quando se trata de dispositivo real, o mesmo código estava com falha. O problema é que o UiAutomator não consegue localizar o elemento por causa do teclado nativo antes de um aplicativo durante a simulação. Eu executei tudo isso no Galaxy nexus, que funciona na API ANDROID 18. Portanto, não faz sentido executar suítes de automação inteiras no modo Selendroid. no código abaixo, depois de preencher o valor na primeira caixa de edição, o controle deve ter atingido a segunda caixa de edição para preencher o valor e assim por diante. Mas não preenche valor porque o teclado nativo aparece antes do aplicativo.

            SwipeableWebDriver driver = new SwipeableWebDriver(
            new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    List<WebElement> editTextList = driver.findElements(By
            .className("android.widget.EditText"));

    editTextList.get(0).sendKeys(c + "Bob");
    editTextList.get(1).sendKeys("123");
    editTextList.get(2).sendKeys("456");
    el = driver.findElement(By.className("android.widget.Button"));
    el.click();

Por favor, alguém que tenha idéia de resolver esse problema? Desde já, obrigado.

Priyank Shah

questionAnswers(8)

yourAnswerToTheQuestion