Мне нужно использовать службу специальных возможностей, чтобы узнать, какой текст присутствует в элементе, когда он появляется. Элемент, на который я нацелен, - это запрос драйвера uber, в настоящее время я могу запустить код при появлении запроса, указав его идентификатор элемента в api служб доступности.
Я определяю наличие запроса с помощью этого кода:
AccessibilityNodeInfo nodeInfo = accessibilityEvent.getSource();
List<AccessibilityNodeInfo> objectList = info.findAccessibilityNodeInfosByViewId("com.ubercab.driver:id/basic_info_left_label_container");
if (objectList.size() > 0) {
// Object is present. We now need to get text on that object
}
Ссылка на образец изображения запроса uber
На изображении выше мне нужно извлечь 3 строки. Они должны иметь следующий вид:
- «UberXL»
- «4 мин»
- «4.83»
Эти строки позволят мне писать код и принимать решения от имени пользователя.
Я искал решение своей проблемы в течение 3 дней, и мне не повезло, я не управляю приложением, которое пытаюсь использовать службы доступности включены, поэтому, насколько мне известно, я на правильном пути.
Я попытался использовать метод .getText () NodeInfo, но он не возвращает ничего ценного.
Как мне извлечь текст из этих запросов?