update 发送文件优化

This commit is contained in:
gallonyin
2023-01-12 16:46:30 +08:00
parent 3619c09923
commit 8511e4932d
2 changed files with 41 additions and 2 deletions

View File

@@ -108,6 +108,7 @@ fun getRoot(ignoreCheck: Boolean): AccessibilityNodeInfo {
return root return root
} else { } else {
LogUtils.e("当前不在企业微信: ${root.packageName}") LogUtils.e("当前不在企业微信: ${root.packageName}")
WeworkController.weworkService.currentPackage = root.packageName?.toString() ?: ""
if (System.currentTimeMillis() % 30 == 0L) { if (System.currentTimeMillis() % 30 == 0L) {
error("当前不在企业微信: ${root.packageName}") error("当前不在企业微信: ${root.packageName}")
if (!root.packageName.contains("(worktool)|(settings)".toRegex())) { if (!root.packageName.contains("(worktool)|(settings)".toRegex())) {

View File

@@ -573,8 +573,27 @@ object WeworkOperationImpl {
newFile.writeBytes(body.bytes()) newFile.writeBytes(body.bytes())
LogUtils.i("文件存储本地成功 $filePath") LogUtils.i("文件存储本地成功 $filePath")
ShareUtil.share("${if (fileType.isBlank()) "*" else fileType}/*", newFile) ShareUtil.share("${if (fileType.isBlank()) "*" else fileType}/*", newFile)
val shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事") var shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事")
sleep(Constant.POP_WINDOW_INTERVAL)
AccessibilityUtil.performClick(shareToWorkButton) AccessibilityUtil.performClick(shareToWorkButton)
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) {
if (shareToWorkButton != null
&& WeworkController.weworkService.currentPackage != Constant.PACKAGE_NAMES) {
LogUtils.e("尝试手势点击!!!!!")
AccessibilityUtil.printNodeClazzTree(shareToWorkButton)
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)) { if (relaySelectTarget(titleList, extraText, timeout = 10000)) {
val stayButton = AccessibilityUtil.findOneByText(getRoot(), "留在企业微信") val stayButton = AccessibilityUtil.findOneByText(getRoot(), "留在企业微信")
AccessibilityUtil.performClick(stayButton) AccessibilityUtil.performClick(stayButton)
@@ -621,8 +640,27 @@ object WeworkOperationImpl {
newFile.writeBytes(EncodeUtils.base64Decode(fileBase64)) newFile.writeBytes(EncodeUtils.base64Decode(fileBase64))
LogUtils.i("文件存储本地成功 $filePath") LogUtils.i("文件存储本地成功 $filePath")
ShareUtil.share("${if (fileType.isBlank()) "*" else fileType}/*", newFile) ShareUtil.share("${if (fileType.isBlank()) "*" else fileType}/*", newFile)
val shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事") var shareToWorkButton = AccessibilityUtil.findOneByText(getRoot(true), "发送给同事")
sleep(Constant.POP_WINDOW_INTERVAL)
AccessibilityUtil.performClick(shareToWorkButton) AccessibilityUtil.performClick(shareToWorkButton)
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) {
if (shareToWorkButton != null
&& WeworkController.weworkService.currentPackage != Constant.PACKAGE_NAMES) {
LogUtils.e("尝试手势点击!!!!!")
AccessibilityUtil.printNodeClazzTree(shareToWorkButton)
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)) { if (relaySelectTarget(titleList, extraText, timeout = 10000)) {
val stayButton = AccessibilityUtil.findOneByText(getRoot(), "留在企业微信") val stayButton = AccessibilityUtil.findOneByText(getRoot(), "留在企业微信")
AccessibilityUtil.performClick(stayButton) AccessibilityUtil.performClick(stayButton)