From 8e8b1164926f229b193101fcf4b6cabd0225fcd7 Mon Sep 17 00:00:00 2001 From: "yineng.huang" Date: Wed, 24 Jul 2024 16:07:49 +0800 Subject: [PATCH] =?UTF-8?q?ios=E5=92=8Candroid=E5=BD=95=E5=B1=8F=E8=A7=86?= =?UTF-8?q?=E9=A2=91=E6=96=87=E4=BB=B6=E6=97=A0=E6=B3=95=E6=92=AD=E6=94=BE?= =?UTF-8?q?=E3=80=81=E7=BA=BF=E7=A8=8B=E9=98=BB=E5=A1=9E=EF=BC=8C=E6=97=A0?= =?UTF-8?q?=E6=B3=95GC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../driver/agent/AndroidAgentSession.java | 20 ++++++++++--------- .../service/AndroidDebuggerServiceImpl.java | 14 ++++++++----- .../service/IosDebuggerServiceImpl.java | 13 +++++++----- 3 files changed, 28 insertions(+), 19 deletions(-) diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/driver/agent/AndroidAgentSession.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/driver/agent/AndroidAgentSession.java index 19bc83f..089af45 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/driver/agent/AndroidAgentSession.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/driver/agent/AndroidAgentSession.java @@ -138,15 +138,10 @@ public class AndroidAgentSession { * 安静地关闭流 */ public void closeSilence() { - try { - state = false; - logger.debug("关闭设备【{}】的agentSession连接",serial); - if (transport != null) { - transport.close(); - } - } catch (IOException ignore) { - + if (null != this.sendThread) { + this.sendThread.interrupt(); } + state = false; } private class CommandSendThread extends Thread { @@ -168,7 +163,14 @@ public class AndroidAgentSession { break; } } - closeSilence(); + try { + logger.debug("关闭设备【{}】的agentSession连接",serial); + if (transport != null) { + transport.close(); + } + } catch (IOException ignore) { + + } } } } diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/AndroidDebuggerServiceImpl.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/AndroidDebuggerServiceImpl.java index 16d0e0e..45d9ec2 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/AndroidDebuggerServiceImpl.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/AndroidDebuggerServiceImpl.java @@ -3,6 +3,7 @@ package net.northking.cctp.upperComputer.service; import cn.hutool.core.codec.Base64; import cn.hutool.core.img.ImgUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import io.appium.java_client.AppiumDriver; import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.ios.IOSDriver; @@ -864,17 +865,20 @@ public class AndroidDebuggerServiceImpl extends AbstractDebuggerService { @Override public String endRecord(DebuggerDeviceInfo info) { - String result = null; + String videoUrl = null; logger.info("收到设备【{}】在任务【{}】关闭录屏的请求............",info.getDeviceId(),info.getTaskId()); AndroidScreenResponseThread screenThread = AndroidDeviceManager.getInstance().getScreenThread(info.getDeviceId()); if (null != screenThread && screenThread.isAlive() && !screenThread.isInterrupted()) { - result = screenThread.stopRecord(); - return result; + String result = screenThread.stopRecord(); + JSONObject jsonObject = JSON.parseObject(result, JSONObject.class); + videoUrl = jsonObject.getString("videoUrl"); + logger.info("设备【{}】在任务【{}】录屏关闭,得到的视频地址为:{}",info.getDeviceId(),info.getTaskId(),videoUrl); + return videoUrl; } else { logger.info("设备【{}】在任务【{}】录屏不存在............",info.getDeviceId(),info.getTaskId()); } - logger.info("设备【{}】在任务【{}】录屏保存的地址:{}............",info.getDeviceId(),info.getTaskId(),result); - return result; + logger.info("设备【{}】在任务【{}】录屏保存的地址:{}............",info.getDeviceId(),info.getTaskId(),videoUrl); + return videoUrl; } @Override diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/IosDebuggerServiceImpl.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/IosDebuggerServiceImpl.java index 27f72bc..0b2cd11 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/IosDebuggerServiceImpl.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/service/IosDebuggerServiceImpl.java @@ -248,17 +248,20 @@ public class IosDebuggerServiceImpl extends AbstractDebuggerService { @Override public String endRecord(DebuggerDeviceInfo info) { - String result = null; + String videoUrl = null; logger.info("收到设备【{}】在任务【{}】关闭录屏的请求............",info.getDeviceId(),info.getTaskId()); IosScreenResponseThread screenThread = IOSDeviceManager.getInstance().getScreenThread(info.getDeviceId()); if (null != screenThread && screenThread.isAlive() && !screenThread.isInterrupted()) { - result = screenThread.stopRecord(); - return result; + String result = screenThread.stopRecord(); + JSONObject jsonObject = JSON.parseObject(result, JSONObject.class); + videoUrl = jsonObject.getString("videoUrl"); + logger.info("设备【{}】在任务【{}】录屏关闭,得到的视频地址为:{}",info.getDeviceId(),info.getTaskId(),videoUrl); + return videoUrl; } else { logger.info("设备【{}】在任务【{}】录屏不存在............",info.getDeviceId(),info.getTaskId()); } - logger.info("设备【{}】在任务【{}】录屏保存的地址:{}............",info.getDeviceId(),info.getTaskId(),result); - return result; + logger.info("设备【{}】在任务【{}】录屏保存的地址:{}............",info.getDeviceId(),info.getTaskId(),videoUrl); + return videoUrl; } @Override