appium===报错Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install io.appium.settings without first uninstalling.的解决办法

要解决的问题:appium在androidV7.0系统上运行时报错 Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install io.appium.settings without first uninstalling.]

原因分析:appium的uiautomator版本与androidV7.0不适配。

预置条件:手机端已经安装完Appium Settings 和 Unlock两个应用

解决步骤:1.修改源码文件-注释安装appiumSettings和unlock的两行代码

            文件路径: C:Program Files (x86)Appium ode_modulesappiumlibdevicesandroidandroid.js

            技术分享

         2.修改源码文件如下:

           a.打开  Program Files (x86)Appium ode_modulesappium ode_modulesappium-adblibadb.js

           b.在adb.js的1035行找到

     this.shell("ps ‘" + name + "‘", function (err, stdout) {

     if (err) return cb(err);
     替换成
     this.shell_grep("ps", name, function (err, stdout) {
     if (err) {
     logger.debug("No matching processes found");
     return cb(null, []);
    }
           并增加上面用到的shell_grep函数:
    ADB.prototype.shell_grep = function (cmd, grep, cb) {
    if (cmd.indexOf(‘"‘) === -1) {
    cmd = ‘"‘ + cmd + ‘"‘;
    }
   var execCmd = ‘shell ‘ + cmd + ‘| grep ‘ + grep;
   this.exec(execCmd, cb);
   };

         3.重启appium

顺便提一下

如果有任何问题,你可以在这里找到我 ,软件测试交流qq群,209092584

原文地址:https://www.cnblogs.com/botoo/p/7514635.html