From 1363de0a83f0973039930566ac8b92447c6ee4f6 Mon Sep 17 00:00:00 2001 From: "jieying.li" Date: Fri, 2 Aug 2024 16:02:21 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=B8=8A=E4=BD=8D=E6=9C=BA=201.?= =?UTF-8?q?=E5=AF=B9=E8=8E=B7=E5=8F=96=E5=88=B0=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E5=A4=84=E7=90=86=EF=BC=8C=E6=88=AA=E5=8F=96?= =?UTF-8?q?json=E9=83=A8=E5=88=86=202.=E6=B3=A8=E5=86=8C=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=EF=BC=8C=E5=A2=9E=E5=8A=A0wdaUrl?= =?UTF-8?q?=E7=9A=84=E5=B1=9E=E6=80=A7=203.=E6=9E=B6=E6=9E=84=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E4=BD=9C=E4=B8=BA=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../deviceManager/common/PyMobileDevice.java | 18 ++++++++++++++++++ .../deviceManager/common/Python3.java | 9 ++++++--- .../thread/MacIosDeviceInitThread.java | 1 + 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/PyMobileDevice.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/PyMobileDevice.java index 74c6220..7916f3b 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/PyMobileDevice.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/PyMobileDevice.java @@ -431,6 +431,9 @@ public class PyMobileDevice extends Python3 { String jsonText = builder.toString(); HashMap applicationInfos = new HashMap<>(); try { + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } applicationInfos = gson.fromJson(jsonText, new TypeToken>() { }.getType()); } catch (JsonSyntaxException e) { @@ -602,6 +605,9 @@ public class PyMobileDevice extends Python3 { } String jsonText = outputReceiver.getHoleOutput(false); try { + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } return gson.fromJson(jsonText, DeviceBaseInfo.class); } catch (JsonSyntaxException e) { logger.error("读取设备基本信息时发生json解析错误:\n" + jsonText, e); @@ -630,6 +636,9 @@ public class PyMobileDevice extends Python3 { return; } String jsonText = line.substring(startIndex + 5); + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } if (jsonText.startsWith("{") && jsonText.endsWith("}")) { try { DeveloperDvtGraphics data = gson.fromJson(jsonText, DeveloperDvtGraphics.class); @@ -691,6 +700,9 @@ public class PyMobileDevice extends Python3 { // System.out.println("jsonText = \n" + jsonText); BatteryDetail batteryDetail; try { + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } batteryDetail = gson.fromJson(jsonText, BatteryDetail.class); } catch (JsonSyntaxException e) { logger.error("反序列化设备电池信息时发生json格式错误", e); @@ -788,6 +800,9 @@ public class PyMobileDevice extends Python3 { if (index > 0) { String jsonText = line.substring(index + 5); try { + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } BatteryBaseInfo batteryBaseInfo = gson.fromJson(jsonText, BatteryBaseInfo.class); callback.onBattery(batteryBaseInfo); } catch (JsonSyntaxException e) { @@ -820,6 +835,9 @@ public class PyMobileDevice extends Python3 { } String jsonText = outputReceiver.getHoleOutput(false); try { + if (null != jsonText && !jsonText.startsWith("{")) { + jsonText = jsonText.substring(jsonText.indexOf("{")); + } return gson.fromJson(jsonText, LockdownInfo.class); } catch (JsonSyntaxException e) { logger.error("处理lockdown查询结果时发生json反序列化错误", e); diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/Python3.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/Python3.java index 03a88bb..b0f9541 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/Python3.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/common/Python3.java @@ -2,6 +2,8 @@ package net.northking.cctp.upperComputer.deviceManager.common; import net.northking.cctp.upperComputer.deviceManager.utils.OutputLineCallback; +import net.northking.cctp.upperComputer.utils.SpringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,11 +52,12 @@ public class Python3 { } })); - String arch = System.getProperty("os.arch"); - if (arch.equals("aarch64")) { +// String arch = System.getProperty("os.arch"); + String arch = SpringUtils.getProperties("macos.build-wda.arch"); + if (StringUtils.isBlank(arch)) { ARCH = "arm64"; } else { - ARCH = "x86_64"; + ARCH = arch; } } diff --git a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/thread/MacIosDeviceInitThread.java b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/thread/MacIosDeviceInitThread.java index 753b3d7..5ba30ef 100644 --- a/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/thread/MacIosDeviceInitThread.java +++ b/cctp-atu/atu-upper-computer/src/main/java/net/northking/cctp/upperComputer/deviceManager/thread/MacIosDeviceInitThread.java @@ -229,6 +229,7 @@ public class MacIosDeviceInitThread extends IosDeviceInitThread { deviceInfo.put("height", realHeight.intValue()); deviceInfo.put("scale", scale); deviceInfo.put("isHarmony", false); + deviceInfo.put("wdaUrl", "http://" + UpperComputerManager.getInstance().getHost() + ":" + phone.getPort8100()); int rotation = screenInfoData.getOrientation() - 1; if (rotation < 0) { logger.debug("无法获取设备【{}】的屏幕方向,默认为0",phone.getUdid());