Android,每次启动手机中都会安装Appium settings和Unclock的方法
2018-02-28 20:06
771 查看
环境介绍: 1、appium版本:1.4.16.1 2、真机运行 实现结果: 运行appium第一次运行则安装Appium settings和Unclock的apk,再次之后的运行则无需手动卸载,再次安装。 问题描述: 第一次:Android手机运行appium,自动安装Appium settings和Unclock的apk, 第二次:第一次运行完毕,若不手动删除已经安装的Appium settings和Unclock,将会提示报错信息如下,提示:Appium settings和Unclock不是第一次安装,因此必须每次运行appium脚本,都需要手动删除此2个apk,重新运行则不会报错。
apk作用说明: 1、Appium settings:用于设置网络状态 2、Unclock:用于自动解锁(使用场景:手机是滑动锁屏的情况下,则会自动解锁并启动apk,注意:图案锁屏与数字锁则不可以哦,只能是滑动锁屏) 解决方法: 1、需要手动去修改appium安装路径下的android.js文件,来实现运行首次安装Appium settings和Unclock,之后的运行则无需再次卸载的操作。 2、android.js的存放路径:D:\Auto Test\appium\Appium\node_modules\appium\lib\devices\android\android.js,说明:D:\Auto Test\appium\为本人的appium存放路径。 3、android.js文件中找到如下代码
WebDriverException: Message: A new session could not be created. (Original error: Command failed: C:\Windows\system32\cmd.exe /s /c "D:\AutoTest\adt-bundle-windows-x86-20140702\sdk\platform-tools\adb.exe -s GWY0216A22013956 install "D:\AutoTest\appium\Appium\node_modules\appium\build\settings_apk\settings_apk-debug.apk"" Failed to install D:\AutoTest\appium\Appium\node_modules\appium\build\settings_apk\settings_apk-debug.apk: Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install io.appium.settings without first uninstalling.] ) 根据以上报错信息,可以看到Appium settings和Unclock的安装路径。
apk作用说明: 1、Appium settings:用于设置网络状态 2、Unclock:用于自动解锁(使用场景:手机是滑动锁屏的情况下,则会自动解锁并启动apk,注意:图案锁屏与数字锁则不可以哦,只能是滑动锁屏) 解决方法: 1、需要手动去修改appium安装路径下的android.js文件,来实现运行首次安装Appium settings和Unclock,之后的运行则无需再次卸载的操作。 2、android.js的存放路径:D:\Auto Test\appium\Appium\node_modules\appium\lib\devices\android\android.js,说明:D:\Auto Test\appium\为本人的appium存放路径。 3、android.js文件中找到如下代码
... Android.prototype.start = function (cb, onDie) { this.launchCb = cb; this.uiautomatorExitCb = onDie; logger.info("Starting android appium"); async.series([ this.initJavaVersion.bind(this), this.initAdb.bind(this), this.packageAndLaunchActivityFromManifest.bind(this), this.initUiautomator.bind(this), this.prepareDevice.bind(this), this.checkApiLevel.bind(this), this.pushStrings.bind(this), this.processFromManifest.bind(this), this.uninstallApp.bind(this), this.installAppForTest.bind(this), this.forwardPort.bind(this), this.pushAppium.bind(this), this.initUnicode.bind(this), //this.pushSettingsApp.bind(this), #手动注释此2行代码,即可解决问题 //this.pushUnlock.bind(this), function (cb) {this.uiautomator.start(cb);}.bind(this), this.wakeUp.bind(this), this.unlock.bind(this), this.getDataDir.bind(this), this.setupCompressedLayoutHierarchy.bind(this), this.startAppUnderTest.bind(this), this.initAutoWebview.bind(this), this.setActualCapabilities.bind(this) ], function (err) { if (err) { this.shutdown(function () { this.launchCb(err); }.bind(this)); } else { this.didLaunch = true; this.launchCb(null, this.proxySessionId); } }.bind(this)); };
相关文章推荐
- android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
- android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
- android 写了个service 在虚拟机测试可以启动 安装到手机后就启动不了 启动了也没有执行方法
- 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法
- Android google maps api程序安装失败 手机安装时缺少google map api 的解决方法
- 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法
- 每次启动Word,Excel2007 2010时都要进行安装配置的解决方法
- xmlSpy已经破解了,但是每次启动都会自动关闭,下面的方法可以屏蔽xmlSpy联网。
- Android检查手机上是否安装了第三方软件的方法------本文以百度地图为例
- 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法
- 每次启动Word、Excel2007时都要进行安装配置的解决方法
- 打印后台程序服务没有启动,每次打开Powerdesigner都会要我安装打印机
- Microsoft Office2007每次启动是都会出现配置进度解决方法
- Android检查手机上是否安装了第三方软件的方法------本文以百度地图为例
- android手机安装时缺少google map api 的解决方法
- android检测手机是否有某个应用以及启动安装另一个应用的问题
- Linux下的Android电话管理软件——QtADB(安装启动方法)
- 启动Android App时,动态将Sqlite数据库文件导入到手机中类方法
- xmlSpy已经破解了,但是每次启动都会自动关闭,下面的方法可以屏蔽xmlSpy联网。
- 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法