diff --git a/src/main/java/org/cloud/sonic/agent/bridge/android/AndroidDeviceBridgeTool.java b/src/main/java/org/cloud/sonic/agent/bridge/android/AndroidDeviceBridgeTool.java index 5014cac6..b251c66c 100755 --- a/src/main/java/org/cloud/sonic/agent/bridge/android/AndroidDeviceBridgeTool.java +++ b/src/main/java/org/cloud/sonic/agent/bridge/android/AndroidDeviceBridgeTool.java @@ -408,8 +408,8 @@ public static void pressKey(IDevice iDevice, AndroidKey androidKey) { executeCommand(iDevice, String.format("input keyevent %s", androidKey.getCode())); } - public static void uninstall(IDevice iDevice, String bundleId) throws InstallException { - iDevice.uninstallPackage(bundleId); + public static String uninstall(IDevice iDevice, String bundleId) throws InstallException { + return iDevice.uninstallPackage(bundleId); } public static void forceStop(IDevice iDevice, String bundleId) { diff --git a/src/main/java/org/cloud/sonic/agent/tests/handlers/AndroidStepHandler.java b/src/main/java/org/cloud/sonic/agent/tests/handlers/AndroidStepHandler.java index c01579f7..99463d54 100755 --- a/src/main/java/org/cloud/sonic/agent/tests/handlers/AndroidStepHandler.java +++ b/src/main/java/org/cloud/sonic/agent/tests/handlers/AndroidStepHandler.java @@ -381,9 +381,13 @@ public void install(HandleContext handleContext, String path) { public void uninstall(HandleContext handleContext, String appPackage) { handleContext.setStepDes("卸载应用"); appPackage = TextHandler.replaceTrans(appPackage, globalParams); - handleContext.setDetail("App包名: " + appPackage); try { - AndroidDeviceBridgeTool.uninstall(iDevice, appPackage); + String errorMessage = AndroidDeviceBridgeTool.uninstall(iDevice, appPackage); + if (errorMessage == null) { + handleContext.setDetail("App包名:" + appPackage + "卸载成功"); + } else { + handleContext.setE(new Exception("uninstall app " + appPackage + " failed,errorMessage:" + errorMessage)); + } } catch (Exception e) { handleContext.setE(e); } diff --git a/src/main/java/org/cloud/sonic/agent/websockets/AndroidWSServer.java b/src/main/java/org/cloud/sonic/agent/websockets/AndroidWSServer.java index 88ba2791..37a6b107 100755 --- a/src/main/java/org/cloud/sonic/agent/websockets/AndroidWSServer.java +++ b/src/main/java/org/cloud/sonic/agent/websockets/AndroidWSServer.java @@ -212,8 +212,12 @@ public void onMessage(String message, Session session) { case "uninstallApp" -> { JSONObject result = new JSONObject(); try { - AndroidDeviceBridgeTool.uninstall(iDevice, msg.getString("detail")); - result.put("detail", "success"); + String errorMessage = AndroidDeviceBridgeTool.uninstall(iDevice, msg.getString("detail")); + if (errorMessage == null) { + result.put("detail", "success"); + } else { + result.put("detail", "fail"); + } } catch (InstallException e) { result.put("detail", "fail"); e.printStackTrace();