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\node_modules\appium\lib\devices\android\android.js

            技术分享

 

         2.修改源码文件如下:

           a.打开  \Program Files (x86)\Appium\node_modules\appium\node_modules\appium-adb\lib\adb.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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM