1、安卓设备连接失败

通过adb devices命令 查看安卓设备的连接情况,如图,未成功连接

解决方法:

(1)关闭360安全卫士和360手机助手
(2)查看5037端口是否被占用

netstat -ano|findstr 5037(windows)

netstat -lnt | grep 5037(linux)

连接成功:

设备连接成功后,CMD命令行运行 appium -a 127.0.0.1 -p 4723 –U 6207febc --no-reset   ,看appium服务器能否运行成功(运行成功后,如果想启动appium图形界面,记得关闭命令行,否则会提示端口冲突)

2、

(1)解决每次运行脚本都安装setting和unlock的问题:

Appium\node_modules\appium\lib\devices\android 路径下打开
android.js文件,注释掉这两行

(2)解决每次运行脚本都会重新安装app的问题

Appium老版本的“设置”里有no reset选项,新版本没有,解决方法:

1>命令行运行appium,带上--noreset

appium -a 127.0.0.1 -p 4723 –U 6207febc --no-reset

2>在脚本里加上no reset设置

self.desired_cups['noReset'] = 'True'

3、获取app的包名和当前活动名:

adb shell

dumpsys activity | grep mFocusedActivity

注:有时候调用app的Activity无效,需要获取到初始Activity,查看方法如下

进入aapt路径下:D:\android-sdk_r24.4.1-windows\android-sdk-windows\build-tools\28.0.3

输入命令: aapt dump badging C:\apk\kaoyanbang.apk | find "launchable-activity"

launchable-activity::com.xxx.xxx.xxx.xxx

4、允许第三方应用启动app的activity:

android-sdk-windows\tools\apps\SdkController 路径下打开

AndroidManifest.xml文件,添加一行:android:exported = "true"

5、运行自动化脚本,appium报错

报错1:selenium.common.exceptions.SessionNotCreatedException: Message: A new session could not be created. (Original error: Requested a new session but one was in progress)

(1)打开appium里面的override exsiting session功能

(2)杀掉app重新启动

报错2:报错 webdriver

app卸载重装后,需要重启appium服务器,否则此时运行脚本,会报错

重启appium和pycharm解决了我百分之八十的报错情况,后来我安装了一个Appium-Desktop的新版,没有再出现过频繁报错的问题,还是升级大法好。

每个错误的解释和原因非常多,具体还是要看appium的日志详情,再来具体分析。

6、Appium方法构造:

appium的 clear() 方法在安卓上不太好用,速度慢且光标跳转容易异常,是个已知bug,建议写一个删除方法,封装一下
1.获取文本长度
2.跳到文本最后
3.删除(全选后删除或者一个个字符删除)

Appium环境搭建——安卓真机调试注意点的更多相关文章

  1. macbook Android开发环境搭建,真机调试

    买了一台MacBook,本以为可以鼓捣一下iOS开发之类的,可惜导师要我做Android开发.无奈开始了在MacBook上开发Android的工作. 从开始配置环境到应用成功在真机上运行,也是曲曲折折 ...

  2. Appium Desktop Inspector 安卓真机配置(Windows)

    本文是基于 Windows环境 通过Appium Desktop 测试真机,首先要确保测试机已经和电脑正确连接(将手机和电脑通过USB数据线连接,手机打开USB调试) 确认电脑与手机是否连接成功的方法 ...

  3. cocos2dx 安卓真机调试问题汇总

    cocos compile编译apk问题汇总: 1,dx编译报错,没有足够的空间 ANTBUILD : [dx] error : Could not create the Java Virtual M ...

  4. 【转】Ubuntu 14.04配置安装java环境和android开发环境(包括真机调试环境)

    原文网址:http://my.oschina.net/HalZf/blog/347351 总要记录下过程,不然老是会忘记掉-真老了.-_-! 一.配置安装ubuntu 64位java环境: 1.下载l ...

  5. 安卓第一课:android studio 的环境搭建与真机运行以及遇到的问题

    AS的下载: https://developer.android.com/studio/index.html AS的安装: android studio, sdk, virtual device都要安 ...

  6. Appium环境搭建——安卓模拟器(AVD)调试 1-创建模拟器失败点的总结

    一.先安装好Android SDK 系统变量—>新建,变量名:ANDROID_HOME,变量值:SDK的安装路径 系统变量—>path—>点击编辑,变量值添加:;%ANDROID_H ...

  7. Appium环境搭建——安卓模拟器(AVD)调试 2-运行Apk失败点的总结

    如何优化AVD模拟器运行速度? 解决方法:开启IntelHAXM 查询intelhaxm是否已经开启: sc query intelhaxm 若开启成功,则如图所示 若没有开启,可以通过BIOS打开, ...

  8. 安卓真机调试 出现Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE....

    [2016-08-20 14:38:39 - hybrid-android] Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE[2016-0 ...

  9. Android 安卓真机调试 出现Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE....

    [2017-03-24 13:30:04 - DataVDemo06] Installing DataVDemo06.apk...[2017-03-24 13:30:08 - DataVDemo06] ...

随机推荐

  1. ansible-play中role的基本用法

    #role应用 #roles跟调用角色的剧本文件应该与roles同级关系,即放在ansible目录下 #makir /root/ansible/roles/{nginx,http,ftp,mysql, ...

  2. 运行python脚本时,报错InsecurePlatformWarning: A true SSLContext object is not available,解决方法

    今天,要在新环境里运行一个python脚本,遇到下面的报错: /usr/lib/python2.7/site-packages/urllib3/util/ssl_.py:160: InsecurePl ...

  3. python 保留字符

    False 假的 None 无 True 真的 and 和 as作为 assert 断言 break 打破 class 种类 continue 继续 def del 删除 elif 否则如果 else ...

  4. 小程序中input设置宽度后宽度还有空间,但是placeholder被遮挡问题

    最近在做小程序,已经设置了宽高,placeholder没有超出input宽度,却被挡住了一部分,上代码看一下: wxml: <view class='container'> <inp ...

  5. Oracle组成介绍

    Oracle Database 11g是一些特殊文件的集合,这些文件是用数据库配置助手创建的,然后用OEM Grid Control完成相关工作.这些数据库文件是通过一组共享内存进程来进行访问的,这组 ...

  6. 52 和 52Rc 通过IIC写入数据

  7. matlab json文件解析 需要下载一个jsonlab-1.5

    % facebookX24.m clc; addpath('C:\Program Files\MATLAB\R2015b\toolbox\jsonlab-1.5'); % read .json jso ...

  8. vi编辑器之删除操作

    参见 1.vi列删除 方法一: ctrl+v进入列编辑模式: 将光标定位子想要删除的起始列: 移动光标至结束列(直接通过移动光标选中,对列不对齐时,可能比较长的行,无法全部选中,尤其是需要一直删除到行 ...

  9. 【5】用vector进行直接插入排序

    百分百自己编的程序,越来越觉得编程很好玩了. 但这算是第一次自己用vector这种不是那么无脑的方法编程,只能最多对3个数进行排序wwwww 今天我要回去搬宿舍了,等明天有时间,我一定要把bug找到! ...

  10. sql server 字符串根据指定分隔符进行分组

    SET QUOTED_IDENTIFIER ON SET ANSI_NULLS ON GO --功能:分拆字符串 --参数:@String:要分拆的字符串:@Delimiter:分割符号 --返回值: ...