Python脚本利用adb进行手机控制

一. adb 相关命令:1. 关闭adb服务:adb kill-server2. 启动adb服务 adb start-server3. 查询当前运行的所有设备 adb devices4. 可能在adb中存在多个虚拟设备运行 可以指定虚拟设备运行 -s 虚拟设备名称5. 重启设备 adb reboot --指定虚拟设备 adb -s 设备名称 reboot6. 查看日志 adb logcat 清除日志 adb logcat -c7. 进入linux shell下 adb shell 其中常用的linux命令 cd cat 等等 输入su可以获取超级管理员名称了 要确定是否有哪些命令 进入 system/bin目录 就知道了8. 传入文件到设备中 adb push 本地文件 远程目录9. 从设备中拷贝文件到本地 adb -s emulator-5556 pull /data/config.ini d:/

10. 显示当前运行的全部模拟器: adb devices11 安装应用程序: adb install -r 123.apk12. 获取模拟器中的文件: adb pull

13. 向模拟器中写文件: adb push

14. 进入模拟器的shell模式: adb shell15. 卸载apk包:

adb shell

cd data/app

rm123.apk

exit

adb uninstall123.apk

adb install-r 123.apk16. 查看adb命令帮助信息: adb help17. 删除系统应用:

adb remount (重新挂载系统分区,使系统分区重新可写)。

adb shell

cd system/app

rm123.apk18. 获取管理员权限: adb root19、复制文件:

复制一个文件或目录到设备:

adb push如:adb push update.zip/sdcard/从设备上复制一个文件或目录:

adb pull如:adb pull/sdcard/update.zip.20、取得当前运行设备的实例的列表及每个实例的状态: adb devices21、adb shell input tap

这条命令模拟Android手机在屏幕坐标(X,Y)处进行了点击操作。22:adb shell input swipe

这条命令模拟Android手机从屏幕坐标(X1,Y1)滑动到坐标(X2,Y2)的操作。23、uiautomator dump dump: creates an XML dump of current UI hierarchy

这个命令是用来成成当前界面的UI层次,并用XML格式进行展示 。这样就可以获取各

个组件的位置了

注:如果PC要想同时控制多台Android手机,必须在adb 后面添加-s

例如:adb-s 13b6e4c4 shell input tap 400 400表示对13b6e4c4这台Android手机进行在屏幕上(400,400)坐标位置进行模拟的点

击事件。24. 能看到设备信息就代表设备已经连接成功了,接下来的命令就是

adb install 路径+包名.apk

例如我的安装包放在桌面,那么命令就是

adb install C:\Users\hyh\Desktop\XXX.apk*** adb shell uiautomator dump /mnt/sdcard/window_dump.xml

获得手机当前界面的UI信息,生成window_dump.xml*** adb shell input text “123” 输入text

举例:1、打开cmd,进入到当前文件夹中,输入命令 adb devices 查看当前与电脑连接的

设备(前提是,手机打开usb调试模式),可以查看已连接成功的手机。2、 若手机成功连接,输入命令 adb shell input tap 100 100, 表示点击屏幕

上坐标为(100,100)的点,如果不知道需要点击的点的具体位置的话可以在手机开

发者模式中设置。

二. adb 模拟按键:1. 比如使用 adb shell input keyevent 命令,不同的 keycode 能实现

不同的功能,完整的 keycode 列表详见 KeyEvent,摘引部分我觉得有意思的如下:

keycode 含义3HOME 键4返回键5打开拨号应用6挂断电话24增加音量25降低音量26电源键27拍照(需要在相机应用里)64打开浏览器82菜单键85 播放/暂停86停止播放87播放下一首88播放上一首122移动光标到行首或列表顶部123移动光标到行末或列表底部126恢复播放127暂停播放164静音176打开系统设置187切换应用207打开联系人208打开日历209打开音乐210打开计算器220降低屏幕亮度221提高屏幕亮度223系统休眠224点亮屏幕231打开语音助手276如果没有 wakelock 则让系统休眠2. input 命令的一些用法举例

电源键

命令:

adb shell input keyevent26执行效果相当于按电源键。

菜单键

命令:

adb shell input keyevent82HOME 键

命令:

adb shell input keyevent3返回键

命令:

adb shell input keyevent4音量控制

增加音量:

adb shell input keyevent24降低音量:

adb shell input keyevent25静音:

adb shell input keyevent164媒体控制

播放/暂停:

adb shell input keyevent85停止播放:

adb shell input keyevent86播放下一首:

adb shell input keyevent87播放上一首:

adb shell input keyevent88恢复播放:

adb shell input keyevent126暂停播放:

adb shell input keyevent127点亮/熄灭屏幕

可以通过上文讲述过的模拟电源键来切换点亮和熄灭屏幕,但如果明确地想要点亮或者熄灭屏

幕,那可以使用如下方法。

点亮屏幕:

adb shell input keyevent224熄灭屏幕:

adb shell input keyevent223三、使用python脚本自动运行cmd 命令1、在adb文件夹下建立一个python文件importos

os.system('adb shell input tap 100 100');

运行脚本,发现与在命令行输入相同语句有同样的效果。2、也可以使用subprocess.Popen,最简单使用方式如下,设置shell=True,就不会弹出cmd框

process= subprocess.Popen('adb shell input tap 14 1402',shell=True)

程序实例:#coding:utf-8#程序功能:可以实现抖音个人页面视频的自动点击,从而自动增加访问量#思路:抖音主页中两个视频切换点击,可以实现访问量的增加#使用ADB程序,视频的屏幕坐标可以使用adb shell uiautomator dump命令,获取该页面xml源码后查得#下述是小米MIX2抖音主页第一个视频和第二个视频的坐标位置#缺点:运行时不能移动屏幕,后续可以采用获取模块ID号的方式去点击相应的位置

importtimeimportsubprocess

i=0#每次操作的间隔时间取决于手机配置,配置越高时间越短

sleep_time = 0.5

while 1:#用popen设置shell=True不会弹出cmd框

process = subprocess.Popen('adb shell input tap 14 1402',shell=True)

time.sleep(sleep_time)

process= subprocess.Popen('adb shell input keyevent KEYCODE_BACK', shell=True)

time.sleep(sleep_time)

process= subprocess.Popen('adb shell input tap 375 1402', shell=True)

time.sleep(sleep_time)

process= subprocess.Popen('adb shell input keyevent KEYCODE_BACK', shell=True)

time.sleep(sleep_time)#os.system('adb shell input tap 14 1402')#os.system('adb shell input keyevent KEYCODE_BACK')#os.system('adb shell input tap 375 1402')

i+=1

print str(i) + 'clicks have been completed'实现原理

Hierarchy Viewer:获得当前手机实时的UI信息,方便用于手机的自动化测试;

python中的subprocess.Popen() 或 Python os模块:调用系统命令;

uiautomator工具:获取界面控件信息;

adb命令:对手机进行操作;

python控制手机屏幕亮度的软件_Python脚本利用adb进行手机控制相关推荐

  1. python控制手机自动刷新闻_Python脚本利用adb进行手机控制的方法

    一. adb 相关命令: 1. 关闭adb服务:adb kill-server 2. 启动adb服务 adb start-server 3. 查询当前运行的所有设备 adb devices 4. 可能 ...

  2. python手机屏幕控制_Python脚本利用adb进行手机控制的方法

    一.  adb 相关命令: 1. 关闭adb服务:adb kill-server 2. 启动adb服务  adb start-server 3. 查询当前运行的所有设备  adb devices 4. ...

  3. python写安卓app控制蓝牙_Python脚本利用adb进行手机控制的方法

    一. adb 相关命令: 1. 关闭adb服务:adb kill-server 2. 启动adb服务 adb start-server 3. 查询当前运行的所有设备 adb devices 4. 可能 ...

  4. 手机编写python脚本_Python 脚本利用adb 进行手机控制

    一.  adb 相关命令: 1. 关闭adb服务:adb kill-server 2. 启动adb服务  adb start-server 3. 查询当前运行的所有设备  adb devices 4. ...

  5. python中adb连接手机_Python脚本利用adb进行手机控制的方法

    如何使用python脚本调用adb shell里面的命令 python调用Shell脚本,有两种方法:os.system(cmd)或os.popen(cmd),前者返回值是脚本的退出状态码,后者的返回 ...

  6. python控制手机屏幕亮度的软件,屏幕亮度调节软件 - osc_52491840的个人空间 - OSCHINA - 中文开源技术交流社区...

    您是否正在寻找屏幕调光器? 那您来对地方了. 因为今天我将向您展示最受欢迎的屏幕调光器解决方案. 为什么需要屏幕调光器? 明亮的光线使眼睛刺痛和干眼 明亮的光线使眼睛疲劳 明亮的灯光使您更难以入睡 因 ...

  7. 手机屏幕亮度调节软件java_Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现...

    Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现 Java代码: package zhangphil.app; import android.app.Activity; imp ...

  8. python控制手机屏幕亮度的软件_使用Python脚本更改显示器亮度

    前言 不管在电脑屏幕前办公还是娱乐,环境光线在变化,看的东西也在变化.显示器的亮度也应该及时调整,白天亮一些,晚上暗一些,打游戏亮一些,看文档暗一些. 如果是笔记本,可以在Win10的任务栏最右边的通 ...

  9. python控制手机屏幕亮度的软件,通过adb操作安卓亮屏、设置背光亮度、解锁、打开app...

    亮屏 adb shell inputkeyevent 26 keyevent 26表示点击power Android adb 点亮和关闭屏幕的命令 # kernel休眠 echo mem > / ...

最新文章

  1. 开课吧python好吗-开课吧9.9元学Python课程适合哪些人?开课吧靠谱吗?
  2. python介绍和用途-python四大用途介绍|老男孩python培训
  3. “实模式--保护模式--实模式”转换过程
  4. LeetCode(38): 报数
  5. C++网络编程快速入门(三):阻塞与非阻塞式调用网络通信函数
  6. 纽大博士宿舍内自缢身亡,本月即将毕业
  7. Javascript——进阶(事件、数组操作、字符串操作、定时器)
  8. C++基础篇之抽象类的接口
  9. python通过文件路径读取图片
  10. 电脑用电量_为什么换了智能电表后,我家用电量一下子多了这么多呢?
  11. MATLAB实现Otsu算法
  12. 对java老师的评价及建议_对老师的评价和建议
  13. C# 如何提取PDF文本和图片
  14. MySQL Router 8 详解
  15. 基于asyncio编写一个telegram爬虫机器人
  16. 怎么登录163vip邮箱,登录方式有哪些?
  17. 【CSS如何画简单的三角形或者梯形】
  18. linux jnlp显示异常,使用headless jnlp将slave连接到master时显示异常
  19. android 7图标大小,Android快捷方式位图启动器图标大小
  20. 基于微信小程序的师生答疑交流平台APP-计算机毕业设计

热门文章

  1. 转发——————《黄金问题3---一万五千字教你如何全面爱护你的膝盖》(正文+1楼回复必看)...
  2. 我的软件--通讯录之三
  3. 微信小程序获取 自己手机号(方法)
  4. B16小鼠黑色素瘤细胞膜包覆纳米载体|MV3黑色素瘤细胞膜磁性纳米粒 粒径控制:100-150 nm
  5. linux下gmt4绘制站点分布图,GMT4 脚本风格指南
  6. 一加系统android版本,一加良心了,三年前的老款手机也可以升级安卓9.0系统
  7. 【RK3399 Ubuntu】基于rk3399的lxde的lubuntu桌面移植适配记录之第三步:Ubuntu根文件系统的桌面化分析和选用
  8. Web前端前沿技术 1 ____视频背景
  9. 使用go-cqhttp结合python作自己的机器人(下)
  10. 借钱的原则和向别人借钱的技巧