Titanium 如何使用appium inspector为appcelerator生成的应用获取Uielements的标识符

Titanium 如何使用appium inspector为appcelerator生成的应用获取Uielements的标识符,titanium,appcelerator,titanium-mobile,titanium-alloy,appcelerator-titanium,Titanium,Appcelerator,Titanium Mobile,Titanium Alloy,Appcelerator Titanium,我正在尝试使用appium inspector为appcelerator生成的应用程序获取Uielements的标识符 当我使用Appium inspector获取UIElements ID时,两个元素的结果类似于 name: type: UIATextField value: label: hint: enabled: true visible: true valid: true location: {73, 37.5} size: {218, 15} xpath: //UIAAppli

我正在尝试使用appium inspector为appcelerator生成的应用程序获取Uielements的标识符

当我使用Appium inspector获取UIElements ID时,两个元素的结果类似于

name: 
type: UIATextField
value:
label: 
hint: 
enabled: true
visible: true
valid: true
location: {73, 37.5}
size: {218, 15}
xpath: //UIAApplication[1]/UIAWindow[1]/UIATextField[1]
在这两种情况下,我都无法检索name属性

Mi index.xml类似于:

<Alloy>    
<Window class="container">
<TextField id="username"/>
<TextField id="password"/>
</Window>
</Alloy>

我应该使用哪个属性来标识UiElements? 我是否必须使用xpath来标识这些元素


致以最诚挚的问候

我还没有找到在本机控件上专门设置id字段的方法。我希望有人知道一个模块或一些可以做得更好的东西,但在此之前,我是这样做的

Tianium的视图类中有一个名为accessibilityLabel的字段,我用它来标识我的文本字段/按钮。在iOS中,Tianium将本机控件的名称和标签属性设置为accessibilityLabel字段。然后,您可以简单地使用XPath通过类似于
/*[@name='usernameField']
的查询来查找它们

Android的工作方式稍有不同,它会设置
content desc
字段,并在其末尾附加一个
,但查询仍然像
/*[@content desc='usernameField.]

两个警告:如果设置accessibilityLabel字段,iOS将开始对XPath隐藏嵌套元素。因此,如果在顶级视图类上设置accessibilityLabel,则无法查询其中的任何内容。另一个问题是,我对iOS和Android中的可访问性功能没有任何经验,这个解决方案肯定会影响您使用它们的任何计划

希望这有帮助