ADB相关问题及操作

如何查看当前连接的设备?

adb devices

若是使用adb devices之后,但是什么也没有显示出来(就像下面这种情况的话)该如何处理?

这种情况应该是手机没有正常连接成功,注意手机端一定要打开开发者模式,之后选择USB调试后才可以正常使用。

若打开了USB调试,却发现还是检测不到相应的设备该如何处理?

1.查看一下是不是有华为助手或者360助手之类的软件才运行,可能他们将这个端口来占据了。

2.检查一下这个安卓手机的驱动是否安装好了,要是没有的话,就用对应的华为助手之类的安装好驱动。

例如我的手机是华为手机,当安装好华为助手安装好了之后,设备管理器哪里就可以正常显示了。

此时在输入adb devices,可以看到已经是可以正常显示设备了。

如何获得当前运行程序的名字?

adb shell dumpsys window | findstr mCurrentFocus 

在Python中的常见操作?

返回上一级     os.system(" adb shell input keyevent 4 ")

点击一个点     os.system(" adb shell input tap 928 331 ")

位置点滑动     os.system(" adb shell input swipe 928 541 928 331 100 ") # 滑动 从 928 541 滑动到 928 331 用100毫秒

输入文字         os.system(" adb shell input text '1111' ") #不过需要注意,这个的文字必须是ASCII码,汉字或者其他的非ASCII码都不好使

获取点击点    os.system("adb shell input getevent")

其中0035和0036开头的就是我们想要的x轴和y轴的坐标了,只不过是16进制的,将其转化为10进制的就可以直接用了。

如何获取手机端的截图?

import os
import cv2

path ='E:\download.png'
os.system('adb shell /system/bin/screencap -p /sdcard/screenshot.png') #截图存放到设备
os.system('adb pull /sdcard/screenshot.png {}'.format(path))  #从设备拉取图片到电脑
img = cv2.imread(path)
cv2.imshow('img',img)
cv2.waitKey(0)
发布了41 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/u014723479/article/details/104078665