From a94a71fd2ddb78815df1481db80c3bd716df8743 Mon Sep 17 00:00:00 2001 From: gallonyin Date: Fri, 10 Mar 2023 17:00:31 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=E5=BE=AE=E7=9B=98?= =?UTF-8?q?=E5=9B=BE=E7=89=87/=E6=96=87=E4=BB=B6=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../worktool/service/WeworkOperationImpl.kt | 54 +++++++++++++++---- 1 file changed, 44 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt b/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt index 99f0400..b3e2515 100644 --- a/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt +++ b/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt @@ -372,27 +372,53 @@ object WeworkOperationImpl { val imageViewList = AccessibilityUtil.findAllByClazz(getRoot(), Views.ImageView) if (imageViewList.size >= 2) { AccessibilityUtil.performClick(imageViewList[1]) - val shareFileButton = AccessibilityUtil.findOneByDesc(getRoot(), "以原文件分享") + val shareFileButton = AccessibilityUtil.findOneByDesc(getRoot(), "以原文件分享", "用其他应用打开") AccessibilityUtil.performClick(shareFileButton) - val shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事") + var shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事") + sleep(Constant.POP_WINDOW_INTERVAL) AccessibilityUtil.performClick(shareToWorkButton) + sleep(Constant.POP_WINDOW_INTERVAL) + shareToWorkButton = AccessibilityUtil.findOnceByText(getRoot(true), "发送给同事") + LogUtils.v("尝试发送给同事", shareToWorkButton == null, WeworkController.weworkService.currentPackage) + val time = System.currentTimeMillis() + var currentTime = time + while (currentTime - time < 5000) { + if (shareToWorkButton != null + && WeworkController.weworkService.currentPackage != Constant.PACKAGE_NAMES) { + LogUtils.e("尝试手势点击!!!!!") + AccessibilityUtil.clickByNode(WeworkController.weworkService, shareToWorkButton) + sleep(Constant.CHANGE_PAGE_INTERVAL) + shareToWorkButton = AccessibilityUtil.findOnceByText(getRoot(true), "发送给同事") + } else { + break + } + currentTime = System.currentTimeMillis() + } if (relaySelectTarget(titleList, extraText, timeout = 10000)) { val stayButton = AccessibilityUtil.findOneByText(getRoot(), "留在企业微信") AccessibilityUtil.performClick(stayButton) + uploadCommandResult(message, ExecCallbackBean.SUCCESS, "", startTime) return true } else { LogUtils.e("微盘文件转发失败: $objectName") + uploadCommandResult(message, ExecCallbackBean.ERROR_RELAY, "微盘文件转发失败: $objectName", startTime) + return false } } else { LogUtils.e("微盘未搜索到相关图片: $objectName") + uploadCommandResult(message, ExecCallbackBean.ERROR_TARGET, "微盘未搜索到相关图片: $objectName", startTime) + return false } } else { LogUtils.e("未找到微盘内搜索") + uploadCommandResult(message, ExecCallbackBean.ERROR_BUTTON, "未找到微盘内搜索", startTime) + return false } } else { LogUtils.e("未找到微盘") + uploadCommandResult(message, ExecCallbackBean.ERROR_BUTTON, "未找到微盘", startTime) + return false } - return false } /** @@ -424,20 +450,28 @@ object WeworkOperationImpl { val shareFileButton = AccessibilityUtil.findOneByDesc(getRoot(), "转发") AccessibilityUtil.performClick(shareFileButton) if (relaySelectTarget(titleList, extraText)) { + uploadCommandResult(message, ExecCallbackBean.SUCCESS, "", startTime) return true } else { LogUtils.e("微盘文件转发失败: $objectName") + uploadCommandResult(message, ExecCallbackBean.ERROR_RELAY, "微盘文件转发失败: $objectName", startTime) + return false } } else { LogUtils.e("微盘未搜索到相关文件: $objectName") + uploadCommandResult(message, ExecCallbackBean.ERROR_TARGET, "微盘未搜索到相关文件: $objectName", startTime) + return false } } else { LogUtils.e("未找到微盘内搜索") + uploadCommandResult(message, ExecCallbackBean.ERROR_BUTTON, "未找到微盘内搜索", startTime) + return false } } else { LogUtils.e("未找到微盘") + uploadCommandResult(message, ExecCallbackBean.ERROR_BUTTON, "未找到微盘", startTime) + return false } - return false } /** @@ -581,9 +615,9 @@ object WeworkOperationImpl { sleep(Constant.POP_WINDOW_INTERVAL) shareToWorkButton = AccessibilityUtil.findOnceByText(getRoot(true), "发送给同事") LogUtils.v("尝试发送给同事", shareToWorkButton == null, WeworkController.weworkService.currentPackage) - val startTime = System.currentTimeMillis() - var currentTime = startTime - while (currentTime - startTime < 5000) { + val time = System.currentTimeMillis() + var currentTime = time + while (currentTime - time < 5000) { if (shareToWorkButton != null && WeworkController.weworkService.currentPackage != Constant.PACKAGE_NAMES) { LogUtils.e("尝试手势点击!!!!!") @@ -656,9 +690,9 @@ object WeworkOperationImpl { sleep(Constant.POP_WINDOW_INTERVAL) shareToWorkButton = AccessibilityUtil.findOnceByText(getRoot(true), "发送给同事") LogUtils.v("尝试发送给同事", shareToWorkButton == null, WeworkController.weworkService.currentPackage) - val startTime = System.currentTimeMillis() - var currentTime = startTime - while (currentTime - startTime < 5000) { + val time = System.currentTimeMillis() + var currentTime = time + while (currentTime - time < 5000) { if (shareToWorkButton != null && WeworkController.weworkService.currentPackage != Constant.PACKAGE_NAMES) { LogUtils.e("尝试手势点击!!!!!")