iOS - findElementsByAccessibilityId and findElementByName not working

I am doing hybrid app iOS automation using Appium. Not able to find the element using findElementsByAccessibilityId and findElementByName. Only findElementByXpath is working fine.
Can you tell me why i am not able to use other two properties

driver.findElementsByAccessibilityId(“Contact Us”) - not working
driver.findElementByName(“Contact Us”) - not working
driver.findElementByXpath(" //UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]/UIAStaticText[46]") - working fine

Below is captured from inspector.

name: Contact Us
type: UIAStaticText
value:
label: Contact Us
enabled: true
visible: false
valid: true
location: {169, 597}
size: {80, 23}
xpath: //UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]/UIAStaticText[46]

Are you able to locate this text via locator? What Appium version you’re using, on what device?

You should grab the page_source right before you’re attempting to perform those actions to see what physically exists in the page_source. Perhaps there’s simply no AccessiblityID or Name specified for the element?

A better XPATH test would be a more simple:

//UIAStaticText[@name=“Contact Us”]

and then try the more specific:

//UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]/UIAStaticText[@name=“Contact Us”]

Both of those examples I provided also make use of your “Contact Us” text, assuming it exists in the Name attribute.

Make sure to report back with your findings. Include the page_source if you can.

Yes. I grabbed the page source.Below is the page source hierarchy for “Contact Us” element. I am using Appium 1.3.7 version.

<UIAStaticText name="Contact Us" label="Contact Us" value="" dom="[object Object]" enabled="true" valid="true" visible="false" hint="" path="/0/0/0/0/22" x="67" y="518" width="77" height="21">
 </UIAStaticText>

Contact Us is available in both name and label attributes. I am able to access this element like below.
driver.findElement(By.xpath("//UIAStaticText[@name=‘Contact Us’]"));

Thanks for your support. But my question is why i am not able to access this using below command.
driver.findElement(By.name(“Contact Us”);

I know that by_name was supposed to be deprecated at some point. Perhaps it has. Check the Appium log for specific reasons for your failure with that feature.

Sorry for silly questions )
On what device you’re running tests? I have something similar here with Xpath elemnt search when I run tests on iPod https://github.com/appium/appium/issues/4842#issuecomment-90167551

Also, try to check this post and solution: http://stackoverflow.com/questions/7688311/cant-get-value-of-uiastatictext
Worked for me when I was not able to fetch element by Accessibility ID