From 9948f33203f3e4b59db762c8d764aae418b4cf57 Mon Sep 17 00:00:00 2001 From: gallonyin Date: Mon, 9 Oct 2023 00:33:38 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E7=BE=A4=E5=8F=91?= =?UTF-8?q?=E5=8A=A9=E6=89=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../worktool/service/WeworkLoopImpl.kt | 54 +++++++++++++------ 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/org/yameida/worktool/service/WeworkLoopImpl.kt b/app/src/main/java/org/yameida/worktool/service/WeworkLoopImpl.kt index 6867e7a..8249103 100644 --- a/app/src/main/java/org/yameida/worktool/service/WeworkLoopImpl.kt +++ b/app/src/main/java/org/yameida/worktool/service/WeworkLoopImpl.kt @@ -352,27 +352,47 @@ object WeworkLoopImpl { LogUtils.d("使用功能: 群发助手") val list = AccessibilityUtil.findOneByClazz(getRoot(), Views.ListView) if (list != null) { - val childCount = list.childCount - for (i in 0 until list.childCount) { - val item = list.getChild(childCount - 1 - i) - if (item != null && item.childCount > 0) { - LogUtils.d("点击群发") - AccessibilityUtil.printNodeClazzTree(item) - AccessibilityUtil.clickByNode(WeworkController.weworkService, AccessibilityUtil.findOnceByClazz(item, Views.FrameLayout)) - if (AccessibilityExtraUtil.loadingPage("EnterpriseCustomerEnterpriseMassMessageDetailActivity")) { - AccessibilityUtil.findOneByText(getRoot(), "发送") - if (AccessibilityUtil.findOnceByText(getRoot(), "已发送", exact = true) != null) { - LogUtils.d("该条群发已发送") - backPress() - } else { - if (AccessibilityUtil.findTextAndClick(getRoot(), "发送", exact = true)) { - LogUtils.d("发送该条群发") - AccessibilityUtil.findOneByText(getRoot(), "已发送", exact = true) + var findDayFlag = false + while (!findDayFlag) { + val childCount = list.childCount + for (i in 0 until list.childCount) { + if (findDayFlag) { + break + } + val item = list.getChild(childCount - 1 - i) + if (AccessibilityUtil.findOnceByText(item, "午") != null) { + findDayFlag = true + } + if (item != null && item.childCount > 0) { + LogUtils.d("点击群发") + AccessibilityUtil.clickByNode(WeworkController.weworkService, AccessibilityUtil.findOnceByClazz(item, Views.FrameLayout)) + if (!AccessibilityExtraUtil.loadingPage("EnterpriseCustomerEnterpriseMassMessageDetailActivity")) { + AccessibilityUtil.clickByNode(WeworkController.weworkService, AccessibilityUtil.findOnceByClazz(item, Views.FrameLayout)) + } + if (AccessibilityExtraUtil.loadingPage("EnterpriseCustomerEnterpriseMassMessageDetailActivity")) { + AccessibilityUtil.findOneByText(getRoot(), "发送") + sleep(Constant.POP_WINDOW_INTERVAL) + if (AccessibilityUtil.findOnceByText(getRoot(), "已发送", exact = true) != null) { + LogUtils.d("该条群发已发送") + backPress() + } else { + if (AccessibilityUtil.findTextAndClick(getRoot(), "发送", exact = true)) { + LogUtils.d("发送该条群发") + AccessibilityUtil.findOneByText(getRoot(), "已发送", exact = true) + } + backPress() + sleep(Constant.POP_WINDOW_INTERVAL) } - backPress() } } } + if (findDayFlag) { + break + } + AccessibilityUtil.performScrollUp(list) + sleep(Constant.CHANGE_PAGE_INTERVAL) + list.refresh() + LogUtils.d("向上滚动查找当日日期") } } }