作为开发或者是测试人员,或者是使用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是长按时间,单位毫秒。
二、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 后面跟着具体的操作指令即可。