Python之调用安卓(Android)ADB指令

简介: 作为开发或者是测试人员,或者是使用Python的伙伴,都会接触到ADB指令,下面就针对这种情况,来解析下Python调用ADB指令的操作。一、长时间按某个元素:adb  input shell ...语法:adb -s 4d0041be98b01f shell input touchscreen swipe 540 716 545 718 1000语义:-s  后跟设备号,swipe 先传移动坐标范围‘540 716 545 718’,然后1000是长按时间,单位毫秒。

作为开发或者是测试人员,或者是使用Python的伙伴,都会接触到ADB指令,下面就针对这种情况,来解析下Python调用ADB指令的操作。

一、长时间按某个元素:adb  input shell ...

语法:adb -s 4d0041be98b01f shell input touchscreen swipe 540 716 545 718 1000

语义:-s  后跟设备号,swipe 先传移动坐标范围‘540 716 545 718’,然后1000是长按时间,单位毫秒。

img_9c6d69e331f4137e24a4e67c6f7da243.png
实现代码

二、adb 命令输入中文: adb -s 设备号 shell input text 输入的内容

语法:adb shell am broadcast -a ADB_INPUT_TEXT --es msg "内容"

语义:利用“ADBKeyBoard”输入法来进行中文输入,通过广播的方式达到输入中文字符

三、adb 启动应用

语法:adb shell am start -n packgage名 /.activity

如启动计算器程序:adb shell am start -n com.android.calculator2/.Calculator

提醒点:一定要找到、找对activity和package

四、adb 查询短信、发短信消息

发短信语法:adb shell am start -a android.intent.action.SENDTO -d smsto:发送号码 --es sms_body 短信内容

查询短信消息:1.手机需ROOT;2.需找到短信数据库文件

数据库文件路径:'/data/data/com.android.providers.telephony/databases/mmssms.db',其中‘mmssms.db’文件就是保存短信内容的数据库文件,可利用正则表达式匹配。

说了这么多ADB指令,可发现adb指令是逐条运行的,那再Python中是一次性完成所有的步骤的,如下指令

语法:首先要确认设备是否已经ROOT ,指令:adb shell su -c cd 'data\system'

语义:-c 后面跟着具体的操作指令即可。

img_7996b02fe39ac44d909bfcae962b98e0.png
ADB
相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
4天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
16 1
|
3月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
61 0
|
4天前
|
网络协议 Shell Android开发
Android 深入学习ADB调试原理(1)
Android 深入学习ADB调试原理(1)
20 1
|
17天前
|
Android开发 开发者
安卓投屏神器 Scrcpy安 报错ERROR: Could not find any ADB device
使用Scrcpy安卓投屏工具时遇到报错,问题根源是未开启开发者模式。解决步骤:进入设置,点击【关于手机】→连续点击版本号激活开发者模式,然后在【系统设置】→【开发者选项】中开启USB调试。参照此方法后可正常执行。Scrcpy软件下载链接和GitHub页面也已提供。
26 1
|
1月前
|
Shell 开发工具 Android开发
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
513 2
|
4月前
|
网络协议 Android开发 虚拟化
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
63 0
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
|
16天前
|
安全 Java 数据处理
Python网络编程基础(Socket编程)多线程/多进程服务器编程
【4月更文挑战第11天】在网络编程中,随着客户端数量的增加,服务器的处理能力成为了一个重要的考量因素。为了处理多个客户端的并发请求,我们通常需要采用多线程或多进程的方式。在本章中,我们将探讨多线程/多进程服务器编程的概念,并通过一个多线程服务器的示例来演示其实现。
|
16天前
|
程序员 开发者 Python
Python网络编程基础(Socket编程) 错误处理和异常处理的最佳实践
【4月更文挑战第11天】在网络编程中,错误处理和异常管理不仅是为了程序的健壮性,也是为了提供清晰的用户反馈以及优雅的故障恢复。在前面的章节中,我们讨论了如何使用`try-except`语句来处理网络错误。现在,我们将深入探讨错误处理和异常处理的最佳实践。
|
1天前
|
机器学习/深度学习 人工智能 数据可视化
Python:探索编程之美
Python:探索编程之美
9 0
|
1天前
|
机器学习/深度学习 人工智能 数据处理
Python编程的魅力与实践
Python编程的魅力与实践