成都中方互动做网站怎样网站内页如何做排名
Appium连接真机
-
使用数据线连接电脑,然后选择
文件传输方式 -
打开手机设置拉至底部,点击
关于手机,连续点击7次版本号打开开发者模式 -
点击设置中的
系统与更新,找到开发者选项----> 打开USB调试即可 -
在终端中输入
adb devices确定是否连接到手机,手机上有可能弹框让手动设置允许USB调试,点击确定即可。![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lSpTQBXj-1678190138685)(imgs8/4.png)]](https://img-blog.csdnimg.cn/96803c60ef2d43c08adc84160dce0b0f.png)
-
连接完毕后,可以打开 appium服务开始整脚本啦。
每次打开app都要重新登录
在使用 python+appium+真机写脚本时,发现每次都是需要重新登录,需要在获取真机实例时补充参数:
{"noReset": True
}
完整版如下
desired_caps = {"platformName": "Android","deviceName": "HBDYD21507204329", # 通过 adb devices命令获取"appPackage": "com.hpbr.bosszhipin","appActivity": ".module.launcher.WelcomeActivity","platformVersion": "10","noReset": True
}
# 获取到手机实例
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_capabilities=desired_caps)
打开app时报错,打不开app
明明是按照要求做的,但是总是打不开app,包名、活动页都没啥问题,为啥呢?
发现:我们通过adb shell dumpsys window | findstr mCurrentFocus命令获取的可能不是真正的包名
以Boos为例,然后通过命令找到了包名和活动页:{33bc171 u0 com.hpbr.bosszhipin/com.hpbr.bosszhipin.module.main.activity.MainActivity}
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2R2TIqHJ-1678190138687)(imgs8/5.png)]](https://img-blog.csdnimg.cn/9ffea57c20724f2b923951e2d4a59ea1.png)
放到脚本里,发现根本打不开app,直接报错了。
解决方案:
我们需要通过包名去拿详细的信息
adb shell dumpsys package com.hpbr.bosszhipin
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U5IugT8Z-1678190138687)(imgs8/6.png)]](https://img-blog.csdnimg.cn/dfb5ab954c6a4dcd9f30344cc7967495.png)
在Non-Data Actions的 action MAIN:里面第一行就是,我们测试下通过终端在手机上打开app.
adb shell am start com.hpbr.bosszhipin/.module.launcher.WelcomeActivity
以上是app的真正入口包名及活动页。
Unexpected error while obtaining UI hierarchy
我们使用Uiautomatorviewer软件时进行元素定位,但是点击快照时就蹦出错误,获取UI层次结构发生意外错误。

可能两种原因:
- JDK版本问题,最好使用1.8的
- android版本问题,Uiautomatorviewer不支持对8.0以后的版本直接截屏
详细解决方案请看这里
