执行大多数命令(例如getprop ro.build.version.release)时,ADB总是崩溃

时间:2018-11-06 22:56:41

标签: android adb

我已经在Windows 10 PC和Windows 7笔记本电脑上安装了ADB(带有SDK管理器),以便运行一些Appium测试。但是,我无法继续进行测试,因为只要执行 getprop ro.build.version.release 之类的命令,ADB都会不断崩溃(它实际上会返回值,然后崩溃)。打开设备监视器(例如scrcpy或appium studio)并执行更多操作时,也会发生相同的问题。

我能够成功执行 adb设备

我注意到,每当我先运行 adb shell ,然后再运行 getprop ro.build.version.release 时,它将返回该值而不会崩溃。

通过崩溃,我的意思是“ ADB停止工作”窗口。

我使用Appium 1.9.1 亚行版本1.0.40 --4986621 SDK管理器中的所有最新信息

这是我尝试运行的VS测试日志:

  

消息:测试方法UnitTestProject1.UnitTest1.TestMethod1引发异常:   System.InvalidOperationException:处理命令时发生未知的服务器端错误。原始错误:获取设备API级别时出错。原始错误:执行adbExec时出错。原始错误:“命令” H:\ SDK \ platform-tools \ adb.exe -P 5037 -s 520080e95a9c1549 shell getprop ro.build.version.sdk”已退出,代码为3221226356。斯特德:‘’;代码:“ 3221226356”

我猜可能是我的防病毒软件引起的,但是我想听听其他建议,因为我不能真正改变AV设置(这是公司的设备)。

  

    [TestMethod]
    public void TestMethod1()
    {
        DesiredCapabilities cap = new DesiredCapabilities();
        cap.SetCapability("automationName", "Appium");
        cap.SetCapability("platformName", "Android");
        cap.SetCapability("platformVersion", "7.1.2");
        cap.SetCapability("deviceName", "Redmi 5 Plus");
        cap.SetCapability("udid", "07c92c189805");
        cap.SetCapability("appPackage", "com.android.vending");
        cap.SetCapability("appActivity", "com.android.vending.AssetBrowserActivity");
        cap.SetCapability("noReset", "true");


        driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.2:4724/wd/hub"), cap);

        Assert.IsNotNull(driver.Context);

    }

2 个答案:

答案 0 :(得分:0)

我使用旧版ADB解决了我的问题:

Android Debug Bridge版本1.0.36 修订0e9850346394-android

这不是最好的解决方案,但它不再崩溃了。

答案 1 :(得分:0)

我在Appium桌面客户端和Java自动化框架上遇到了同样的问题。 在我的本地将appium降级到较旧的版本,并使用小于9的Android版本会有所帮助。