Как получить текст из пользовательского ListView с помощью UiAutomator2 + Appium? - PullRequest
0 голосов
/ 25 февраля 2019

Я получаю следующую структуру из приложения Android, использующего Appium Inspector (с UiAutomator2):

(...)
<android.widget.Spinner index="1" package="something.something" class="android.widget.Spinner" text="[object Object]" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[64,1016][106,1060]" displayed="true">
  <android.widget.ListView index="0" package="something.something" class="android.widget.ListView" text="" resource-id="react-select-7--list" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1174][720,1384]" displayed="true">
    <android.view.View index="0" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-0" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="true" long-clickable="false" password="false" scrollable="false" selected="true" bounds="[0,1174][720,1280]" displayed="true" />
    <android.view.View index="1" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-1" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1278][720,1384]" displayed="true" />
    <android.view.View index="2" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-2" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1382][720,1384]" displayed="true" />
    <android.view.View index="3" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-3" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1382][720,1384]" displayed="true" />
    <android.view.View index="4" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-4" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1382][720,1384]" displayed="true" />
    <android.view.View index="5" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-5" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1382][720,1384]" displayed="true" />
    <android.view.View index="6" package="something.something" class="android.view.View" text="[object Object]" resource-id="react-select-7--option-6" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="false" long-clickable="false" password="false" scrollable="false" selected="false" bounds="[0,1382][720,1384]" displayed="true" />
  </android.widget.ListView>
</android.widget.Spinner>
(...)

Это выглядит как пользовательская реализация представления списка, но я могу ошибаться.

Проблема в том, что я могу видеть текст для каждого элемента списка на экране, но не могу получить текст из него (я получаю [object Object], используя getText()).

Я что-то не так делаю?Есть ли обходной путь для этого?

Обратите внимание, что я проверил весь контент XML на наличие текста, который я ищу, и его нет нигде.Я также дважды проверил, что элементы, представленные в XML выше, на самом деле являются элементами в списке.

...