Unable to click on button in Real device while locator is correct and visible on screen

Hi All,

I am facing an issue to click “Use this Location” button if I am selecting value from “Nighborhood” drop down on real device. If I am not selecting value from “Neighbor” dropdown and only select value from “city” drop down then it works perfectly. I don’t know once “Neighbor” drop down list open up and covers “Use this Location” button, I am not able to click it (after select value from “Neighbor” dropdown) on and its throwing no such element exception.

I am using below code snippet:

WebDriverWait wait = new WebDriverWait(driver, 120);
wait.until(ExpectedConditions.elementToBeClickable(By.id(“usingResourceID”)));
WebElement useThisLocation = driver.findElement(By.id(“usingResourceID”));
useThisLocation.click();

I have tried with “UIselector” also:

public void TapByText(String buttonText) {

	String buttonName="new UiSelector().text(\"MY_TEXT\")".replace("MY_TEXT", buttonText);
	List<WebElement> el = (List<WebElement>) driver.findElements(MobileBy.AndroidUIAutomator(buttonName));
	System.out.println(el.size());
    if (el.size()==0) {
       Log.info("element with 'Use this location' not found");

    }
    new TouchAction(driver).press(ElementOption.element(el.get(0))).waitAction().release().perform();
    ReportMobile.getMessage(buttonText +" is clicked");

}

I am able to click on element in Emulator without any dependency of value selection from drop down.

Environment:
OS: Android
Appium-java client: 6.1.0
Appium-Server: 1.6.2
Selenium-java client: 3.13.0
Java version: jdk1.8.0_161
Android version: 7.0
Device: Samsung Galaxy S7 edge

DeliveryLocation