aardio 文档

process.adb 库模块帮助文档

必读

更新

process.adb 扩展库最低支持 aardio v40.94.1 以上版本。

参考文档

adb 命令速查与参考文档:

范例

请参考开源软件 A_A(手机投屏与自动化助手)

启用手机调试

手机启用 adb 调试步骤

要点:点按手机版本号选项七次才会显示开发者选项

adb 服务端与客户端进程

process.adb.startServer 启动 adb 服务端,这个函数实际上会自动调用一次, adb 需要一个常驻服务端(启动一个 adb.exe 进程),也只能有一个服务进程,多个服务进程会工作不正常。 这个扩展库会自动查找之前启动的 adb 服务端,如果找到就直接重用。 进程退出时不会退出常驻服务端(一般无此必要 )。

每次发送 adb 指令时也会启动一个 adb 客户端,这也是一个 adb.exe 进程。 所有 adb 客户端在执行完成后,或当前进程退出后将会自动关闭(由 process.job.limitKill 实现)。

连接手机

导入 process.adb 就会自动发现已有连接。

导入并使用 process.adb.connecter() 可检测连接, 没有连接就会启动连接与手机配对向导。

只有首次连接需要配对。 可打开手机设置 » 无线调试 中的二维码配对, 用手机扫 process.adb.connecter 向导窗口的二维码即可。 配对成功后,在手机设置中关闭并重新打开“无线调试”电脑端就会自动连接手机。 这是因为重新打开无线调试会广播当前连接端口(每次都会变)。 而 process.adb.connecter 使用 mDNS 协议自动获取手机广播的无线连接端口。

固定无线调试端口

在连接成功以后, 可选执行代码 process.adb.tcpip("5555",true) 固定无线调试端口。 但这个固定端口似乎过一段时间不用就会失效。

如果提示权限被拒绝, 可以试试使用 USB 线连接手机直接执行上面的 tcpip 函数固定无线端口。 一般情况下没有必要这样做,因为可以自动发现动态变化的无线调试端口。

process 成员列表 #

process.adb() #

返回对象:processPopenObject

process.adb(...) #

执行 adb 命令,返回 process.popen 进程管道对象。
可传入一个或多个启动命令行参数(字符串)。
传入单个字符串参数时,可用空格分开多个命令行参数。
如果有多个命令行参数,则不在双引号内、且包含空白或需要转义的参数时,
转义处理该参数后并在首尾添加双引号。
也可用一个数组传入多个参数

process.adb 成员列表 #

使用管道调用 adb。
调用 process.adb.startServer 函数启动 adb 服务端,
该函数会重用已启动的 adb 服务端而不会重复启动。
该函数启动的 adb 服务端为驻留进程,不会随程序退出,

发送其他 adb 指定则启动 adb 客户端。
此扩展库启动的所有 adb 客户端在执行结束或程序退出时自动关闭。

执行 adb 命令,返回 process.popen 进程管道对象。

process.adb.connect #

无线连接手机设备,
需要先调用 pair 函数配对。

process.adb.connect("IP:端口",设为默认设备) #

无线连接手机设备。
可选参数 @2 指定连接成功是否自动调用 setSerialNo 函数设为默认设备,
不指定参数 @2 则默认设为 true。

请打开『手机开发者设置/无线调试』获取动态无线端口。
或用 tcpip 函数设置固定端口并获取连接地址。
如果 tcpip 函数保存了默认地址,那么 connect 函数可省略连接地址参数。

连接成功返回连接地址,失败返回 null,错误信息。

首次连接需要先调用 pair 函数配对设备。
注意配对端口与连接端口不一样

process.adb.defaultArguments #

可用一个数组指定添加到所有 ADB 命令的默认全局选项,默认为 null。
默认默认全局选项会添加到所有命令行参数的最前面。
例如设为["-d"]以连接到唯一的 USB 真机
设为["-H","IP地址","-p",端口号]以连接到远程 ADB 服务端。

如果 defaultArguments 不是 null 值,
则忽略通过 setSerialNo 函数自动绑定的默认目标设备(不再自动添加 -s 选项)

process.adb.disconnect() #

断开连接

process.adb.escapeQuote(text) #

将参数 @text 转换为单引号包围的字符串,
自动转义字符串内部包含的单引号。

返回字符串可直接用于 shell 参数,不需要再进行转义。
注意字符串首尾不需要再添加单引号。

process.adb.execOut(...) #

调用 exec-out 命令读取二进制数据。

可传入一个或多个启动命令行参数(字符串)。
传入单个字符串参数时,可用空格分开多个命令行参数。
如果有多个命令行参数,则不在双引号内、且包含空白或需要转义的参数时,
转义处理该参数后并在首尾添加双引号。
也可用一个数组传入多个参数

process.adb.findDevice() #

查找已连接设备,并自动设置一个默认设备。
如果当前仅连接一个设备,则将其指定为默认设备并返回设备序号。
否则按以下规则查找设备:
如果参数 @1 为设备序号,优先选择指定设备。
如果未指定设备序号,则优先选择 USB 连接的设备。
成功返回选择的默认设备序号

在导入 process.adb 库时会自动执行一次 startServer 与 findDevice 函数。

process.adb.findServerPort() #

查找已运行的 adb 服务端端口

process.adb.get(...) #

执行 adb 命令。
成功返回进程输出,出错返回 null,错误信息 。

可传入一个或多个启动命令行参数(字符串)。
传入单个字符串参数时,可用空格分开多个命令行参数。
如果有多个命令行参数,则不在双引号内、且包含空白或需要转义的参数时,
转义处理该参数后并在首尾添加双引号。
也可用一个数组传入多个参数

process.adb.getDevices(offline,unauthorized) #

返回所有连接设备。
如果参数 @offline 为 true ,则允许返回离线设备。
如果参数 @ unauthorized 为 true ,则允许返回未近权设备。

返回值为一个数组,数组元素为设备信息。
设备信息的 serialNo 字段为设备串号,
state 字段为连接状态,"device" 为已连接,"offline" 表示离线。
info 为设备信息,其中 product 为产品代号,model 为设备型号

process.adb.getEvent() #

监听输入事件。
可指定一个或多个参数,添加 "-l" 以文本代替数值显示事件类型与名称。
返回值为 process.popen 对象。
调用返回对象的 lines 函数可以遍历所有回显行并匹配需要的值。
调用返回对象的 ctrlEvent(0) 函数可退出监听进程。
回显事件格式:设备 事件类型 事件名 事件值

返回对象:processPopenObject

process.adb.getMaxPos() #

返回最大 x 坐标与最大 y 坐标。
用于调用 getEvent 函数时转换输出的事件坐标值

process.adb.getProp #

获取属性。
成功返回字符串类型的属性值,
失败返回 null, 错误信息

process.adb.getProp("ro.build.version.release") #

process.adb.getProp("ro.build.version.getProp("ro.build.version.release")/*返回 android 系统版本,  
成功返回一个字符串类型的数值*/

process.adb.getScreen() #

返回设备宽度与高度,有 2 个返回值。

process.adb.getSerialNo() #

返回当前连接的设备串号,
出错返回 null,错误信息。

如果当前连接了多个设备,且未用 setSerialNo 函数指定设备,
此函数返回 null 值,错误信息

process.adb.getState() #

成功返回设备状态,"device" 为连接成功。
出错返回 null,错误信息

process.adb.input(...) #

发送输入事件,可指定一个或多个 input 命令的参数。
建议改用 process.adb.shellInput 对象的方法发送输入事件。

process.adb.install #

安装应用到手机。

process.adb.install("apk文件路径",...) #

安装应用到手机。
可用 process.adb.logger 预先设置进程回显对象

process.adb.installUrl #

自指定的网址下载 APK 并安装到手机。

process.adb.installUrl("apk文件网址,...) #

自指定的网址下载 APK 并安装到手机。
如果参数 @1 指定 HTML 页面,则自动自 HTML 页面提取 apk 下载链接。
参数 @1 也可以指定本地 APK 文件路径。

可用 process.adb.logger 预先设置进程回显对象。

如果 APK 文件太大,建议改用 inet.downBox 或者 inet.httpFile 下载

process.adb.ip() #

返回手机 IP 地址

process.adb.isAwake() #

手机亮屏状态返回 true

process.adb.isConnected() #

当前是否连接设备

process.adb.isLockScreen() #

手机锁状态返回 true

process.adb.key #

发送按键事件。

如果需要连续发送按键,
建议先创建 process.adb.shellInput 对象,
然后调用 process.adb.shellInput 对象的 key 方法或其他 key 前缀的方法。
可避免重复启动 shell 进程。

process.adb.key() #

模拟手机按键。
需要在手机开发者设置中打开模拟按键权限。
可以使用其他 key 前缀的函数发送指定键码

process.adb.key(code,longPress) #

发送按键事件。
code 可以为数值或文本键名。
用法请参考 adb 文件。
参数 @2 为 true 时表示长按

如果需要发送一系列按键则建议先创建 process.adb.shellInput 对象。
然后调用 shellInput.key 或 shellInput.key 前缀的其他方法。

process.adb.killServer() #

停止 adb 服务端,无返回值,
adb 服务端为驻留进程用于接收命令并向手机转发指令,
注意所有 adb 客户端共用也只能共用一个服务端

process.adb.listPackages() #

列出所有应用。
可选指定一个或多个字符串参数,
"-s" 参数指定只返回系统应用,"-3"参数限定返回第三方应用。
成功返回一个数组,不指定"-f","-i"参数时数组元素为包名。

process.adb.logger #

设置 push,pull,install,uninstall 等命令的默认回显对象。
此对象用于 process.popen 的 logger 对象,
可以设为函数或文本框控件,如果引入了 console 库则会默认回显到控制台。

process.adb.openUrl(url) #

用浏览器打开参数 @url 指定的网址

process.adb.pair #

无线配对手机设备
Android 11 及更高版本支持

process.adb.pair("IP:端口","配对码") #

无线配对手机设备
参数 @1 示例 "192.168.1.103:35151"。
请打开『手机开发者设置/无线调试/使用配对码配对设备』获取IP端口与配对码。
注意配对端口与连接端口是不一样的。

成功返回包含设备guid 的字符串,
失败返回 null,错误信息

process.adb.pairQr("IP:端口","配对码") #

扫描二维码后无线配对手机设备
请打开『手机开发者设置/无线调试/使用二维码配对设备』扫描二维码。
请调用 process.adb.qrCode 并传入相同参数生成二维码。
注意配对端口与连接端口是不一样的。

成功返回包含设备 guid 的字符串,
失败返回 null,错误信息

process.adb.path #

adb.exe 路径

process.adb.pull #

自手机下载文件。
此函数调用 process.adb.logger 显示进程输出。
如果要直接返回结果,请改用 pullGet 函数

process.adb.pull("/mnt/sdcard/my.txt","本地路径",...) #

自手机下载文件。
注意本地当前目录为 process.adb.workDir 指定的目录,默认为"/"。

如果进程输出 Permission Denied 无权限,
建议请打开手机 USB 调试模式,尝试 root 修改目录权限。
可用 process.adb.logger 预先设置进程回显对象

process.adb.pullGet #

自手机下载文件。
成功返回 true ,失败返回 null, 错误信息。
此函数不会调用 process.adb.logger 输出

process.adb.pullGet("/mnt/sdcard/my.txt","本地路径",...) #

自手机下载文件。
注意本地当前目录为 process.adb.workDir 指定的目录,默认为"/"

process.adb.push #

上传文件到手机
此函数调用 process.adb.logger 显示进程输出。
如果要直接返回结果,请改用 pushGet 函数

process.adb.push("本地路径","/mnt/sdcard/",...) #

上传文件到手机。
注意本地当前目录为 process.adb.workDir 指定的目录,默认为"/"。

如果进程输出 Permission Denied 无权限,
建议请打开手机 USB 调试模式,尝试 root 修改目录权限。
可用 process.adb.logger 预先设置进程回显对象

process.adb.pushGet #

上传文件到手机。
成功返回 true ,失败返回 null, 错误信息。
此函数不会调用 process.adb.logger 输出

process.adb.pushGet("本地路径","/mnt/sdcard/",...) #

上传文件到手机。
注意本地当前目录为 process.adb.workDir 指定的目录,默认为"/"

process.adb.pushTemp(本地路径,手机文件路径,回调函数) #

process.adb.pushTemp("/example.dex","/data/local/tmp/example.dex",  
    function(path){  
        /*上传成功回调此函数,  
path 为上传成功的手机文件路径。  
函数调用完成自动删除上传到手机的临时文件。*/  
    }  
)

process.adb.run #

调用安卓手机上的命令行工具 app_process 启动 Java 进程。
此函数返回 process.popen 对象,失败返回 null ,错误信息。

process.adb.run() #

返回对象:processPopenObject

process.adb.run(dexPath,mainClassName,...) #

process.adb.runGet #

调用安卓手机上的命令行工具 app_process 运行 Java 进程。
等待执行完成,成功返回标准输出,失败返回标准输出与错误输出。

process.adb.runGet(dexPath,mainClassName,...) #

此函数返回 process.popen 对象。

process.adb.screenCap() #

手机截屏到指定文件。
成功返回 true ,失败返回 null,错误信息

process.adb.sendSms((phone,message) #

发送短信。
参数 @phone 指定手机号。
可选用参数 @message 指定短信内容。

process.adb.sendString(text) #

发送输入文本事件,text 指定要输入的字符串。

此函数不支持中文。

如果需要发送中文可使用 USB 连接并允许 USB 安装应用,
然后安装并通过 ADBKeyboard 发送中文。

process.adb.sendevent() #

发送输入事件,参数示例:
"sendevent /dev/input/event3 3 57 0"

process.adb.setSerialNo(设备串号) #

指定设将命令发送至特定设备。
注意 connect,disconnect,findDevice 等函数会自动调用此函数。

参数 @1 指定设备序号,设为 null 则不指定特定设备。
此函数返回参数 @1 。
此函数会将参数指定的设备串号设为进程与当前线程的 adb 命令默认目标设备。
如果未指定 process.adb.defaultArguments 属性
则所有需要指定设备的命令中将自动添加 "-s","默认设备串号"参数。

process.adb.shareFile(localPath, target) #

在手机上分享文件。
建议在工作线程中引入 process.adb 库并调用此函数。

process.adb.shareText(text,title,target) #

在手机上分享文本。

process.adb.shell() #

启动 adb 客户端并返回 process.popen 对象,
指定参数则直接执行参数指定的命令后关闭进程。

不指定参数则进入 shell 命令交互模式,
交互模式下可使用 expect 函数检测并等待进程输出。

更多用法请参考 process.popen 库函数文档

返回对象:processPopenObject

process.adb.shellGet(...) #

执行 adb shell 命令。
成功返回进程输出,出错返回 null,错误信息 。

可传入一个或多个启动命令行参数(字符串)。
传入单个字符串参数时,可用空格分开多个命令行参数。
如果有多个命令行参数,则不在双引号内、且包含空白或需要转义的参数时,
转义处理该参数后并在首尾添加双引号。
也可用一个数组传入多个参数

process.adb.shellInput() #

创建发送手机输入命令的 shell 进程,
可以调用返回对象的 tap,swipe 或 key 前缀的系列成员函数
向手机发送按键命令。

返回对象:processAdbShellInputObject

process.adb.startCall(phone) #

拔打指定电话,需要在手机开发者选项中打开权限

process.adb.startServer() #

启动 adb 服务端,成功返回 true ,

此函数如果找到之前已启动的服务端会直接重用该服务并返回 true 。
失败返回 false, 错误信息 。

adb 服务端为驻留进程用于接收命令并向手机转发指令
而 adb 客户端进程在向服务端发送完指令后退出

这个函数会在程序启动时自动调用一次

process.adb.swipe #

向手机发送一系列连续的触摸事件以模拟手势(Gesture)或滑动(Sliding)。

process.adb.swipe(x1,y1,x2,y2,duration) #

从 x1,y1 坐标滑动到 x2,y2 坐标。
可选用 duration 指定持续时间,以毫秒为单位。
原地滑动发送长按事件

process.adb.tap #

模拟触模输入事件

process.adb.tap(x,y) #

参数 x,y 指定坐标

process.adb.tcpip() #

已使用 USB 数据线连接手机后修改无线连接端口。
注意如果长时间未使用,使用此命令开启的无线端口会被关闭。

参数@1 使用数值或字符串指定端口号,不指定则默认为 5555。
成功返回"IP:端口"格式地址,失败返回 null,错误信息。

如果参数 @1 为 false 则关闭此固定端口并切换到默认的 USB 模式。
成功返回进程输出,失败返回 null,错误输出。

此函数开启 TCPIP 固定端口以后,
手机无线调试页面仍然会显示另一个动态端口号。
并且每次调用这个函数,动态端口号都会变更

process.adb.uninstall("应用名") #

卸载应用。
可用 process.adb.logger 预先设置进程回显对象

process.adb.uninstall("应用名","-k") #

卸载应用,但保留配置和缓存

process.adb.userAgent #

用于下载 APK 的 Android 设备 User-Agent

process.adb.version() #

返回 ADB 版本信息。

process.adb.version(true) #

返回手机设备 Android 版本。

process.adb.waitForDevice() #

等待设备连接

process.adb.workDir #

工作目录,默认为 "/"(应用程序根目录);

processAdbShellInputObject 成员列表 #

processAdbShellInputObject.close() #

关闭对象

processAdbShellInputObject.key #

向手机发送按键。
所有 key 前缀的方法都是调用 key 方法发送按键。

processAdbShellInputObject.key(code,longPress) #

processAdbShellInputObject.key0() #

按键 7

processAdbShellInputObject.key1() #

按键 8

processAdbShellInputObject.key11() #

按键 227

processAdbShellInputObject.key12() #

按键 228

processAdbShellInputObject.key2() #

按键 9

processAdbShellInputObject.key3() #

按键 10

processAdbShellInputObject.key3dMode() #

按键 206

processAdbShellInputObject.key4() #

按键 11

processAdbShellInputObject.key5() #

按键 12

processAdbShellInputObject.key6() #

按键 13

processAdbShellInputObject.key7() #

按键 14

processAdbShellInputObject.key8() #

按键 15

processAdbShellInputObject.key9() #

按键 16

processAdbShellInputObject.keyA() #

按键 29

processAdbShellInputObject.keyAllApps() #

按键 284

processAdbShellInputObject.keyAltLeft() #

按键 57

processAdbShellInputObject.keyAltRight() #

按键 58

processAdbShellInputObject.keyApostrophe() #

按键 75

processAdbShellInputObject.keyAppSwitch() #

按键 187

processAdbShellInputObject.keyAssist() #

按键 219

processAdbShellInputObject.keyAt() #

按键 77

processAdbShellInputObject.keyAvrInput() #

按键 182

processAdbShellInputObject.keyAvrPower() #

按键 181

processAdbShellInputObject.keyB() #

按键 30

processAdbShellInputObject.keyBack() #

按键 4

processAdbShellInputObject.keyBackslash() #

按键 73

processAdbShellInputObject.keyBookmark() #

按键 174

processAdbShellInputObject.keyBreak() #

按键 121

processAdbShellInputObject.keyBrightnessDown() #

按键 220

processAdbShellInputObject.keyBrightnessUp() #

按键 221

processAdbShellInputObject.keyButton1() #

按键 188

processAdbShellInputObject.keyButton10() #

按键 197

processAdbShellInputObject.keyButton11() #

按键 198

processAdbShellInputObject.keyButton12() #

按键 199

processAdbShellInputObject.keyButton13() #

按键 200

processAdbShellInputObject.keyButton14() #

按键 201

processAdbShellInputObject.keyButton15() #

按键 202

processAdbShellInputObject.keyButton16() #

按键 203

processAdbShellInputObject.keyButton2() #

按键 189

processAdbShellInputObject.keyButton3() #

按键 190

processAdbShellInputObject.keyButton4() #

按键 191

processAdbShellInputObject.keyButton5() #

按键 192

processAdbShellInputObject.keyButton6() #

按键 193

processAdbShellInputObject.keyButton7() #

按键 194

processAdbShellInputObject.keyButton8() #

按键 195

processAdbShellInputObject.keyButton9() #

按键 196

processAdbShellInputObject.keyButtonA() #

按键 96

processAdbShellInputObject.keyButtonB() #

按键 97

processAdbShellInputObject.keyButtonC() #

按键 98

processAdbShellInputObject.keyButtonL1() #

按键 102

processAdbShellInputObject.keyButtonL2() #

按键 104

processAdbShellInputObject.keyButtonMode() #

按键 110

processAdbShellInputObject.keyButtonR1() #

按键 103

processAdbShellInputObject.keyButtonR2() #

按键 105

processAdbShellInputObject.keyButtonSelect() #

按键 109

processAdbShellInputObject.keyButtonStart() #

按键 108

processAdbShellInputObject.keyButtonThumbl() #

按键 106

processAdbShellInputObject.keyButtonThumbr() #

按键 107

processAdbShellInputObject.keyButtonX() #

按键 99

processAdbShellInputObject.keyButtonY() #

按键 100

processAdbShellInputObject.keyButtonZ() #

按键 101

processAdbShellInputObject.keyC() #

按键 31

processAdbShellInputObject.keyCalculator() #

按键 210

processAdbShellInputObject.keyCalendar() #

按键 208

processAdbShellInputObject.keyCall() #

按键 5

processAdbShellInputObject.keyCamera() #

按键 27

processAdbShellInputObject.keyCapsLock() #

按键 115

processAdbShellInputObject.keyCaptions() #

按键 175

processAdbShellInputObject.keyCenter #

keyDpadCenter;

processAdbShellInputObject.keyChannelDown() #

按键 167

processAdbShellInputObject.keyChannelUp() #

按键 166

processAdbShellInputObject.keyClear() #

按键 28

processAdbShellInputObject.keyComma() #

按键 55

processAdbShellInputObject.keyContacts() #

按键 207

processAdbShellInputObject.keyCopy() #

按键 278

processAdbShellInputObject.keyCtrlLeft() #

按键 113

processAdbShellInputObject.keyCtrlRight() #

按键 114

processAdbShellInputObject.keyCut() #

按键 277

processAdbShellInputObject.keyD() #

按键 32

processAdbShellInputObject.keyDel() #

按键 67

processAdbShellInputObject.keyDown #

keyDpadDown;

processAdbShellInputObject.keyDpadCenter() #

按键 23

processAdbShellInputObject.keyDpadDown() #

按键 20

processAdbShellInputObject.keyDpadDownLeft() #

按键 269

processAdbShellInputObject.keyDpadDownRight() #

按键 271

processAdbShellInputObject.keyDpadLeft() #

按键 21

processAdbShellInputObject.keyDpadRight() #

按键 22

processAdbShellInputObject.keyDpadUp() #

按键 19

processAdbShellInputObject.keyDpadUpLeft() #

按键 268

processAdbShellInputObject.keyDpadUpRight() #

按键 270

processAdbShellInputObject.keyDvr() #

按键 173

processAdbShellInputObject.keyE() #

按键 33

processAdbShellInputObject.keyEisu() #

按键 212

processAdbShellInputObject.keyEndcall() #

按键 6

processAdbShellInputObject.keyEnter() #

按键 66

processAdbShellInputObject.keyEnvelope() #

按键 65

processAdbShellInputObject.keyEquals() #

按键 70

processAdbShellInputObject.keyEscape() #

按键 111

processAdbShellInputObject.keyExplorer() #

按键 64

processAdbShellInputObject.keyF() #

按键 34

processAdbShellInputObject.keyF1() #

按键 131

processAdbShellInputObject.keyF10() #

按键 140

processAdbShellInputObject.keyF11() #

按键 141

processAdbShellInputObject.keyF12() #

按键 142

processAdbShellInputObject.keyF2() #

按键 132

processAdbShellInputObject.keyF3() #

按键 133

processAdbShellInputObject.keyF4() #

按键 134

processAdbShellInputObject.keyF5() #

按键 135

processAdbShellInputObject.keyF6() #

按键 136

processAdbShellInputObject.keyF7() #

按键 137

processAdbShellInputObject.keyF8() #

按键 138

processAdbShellInputObject.keyF9() #

按键 139

processAdbShellInputObject.keyFocus() #

按键 80

processAdbShellInputObject.keyForward() #

按键 125

processAdbShellInputObject.keyForwardDel() #

按键 112

processAdbShellInputObject.keyFunction() #

按键 119

processAdbShellInputObject.keyG() #

按键 35

processAdbShellInputObject.keyGrave() #

按键 68

processAdbShellInputObject.keyGuide() #

按键 172

processAdbShellInputObject.keyH() #

按键 36

processAdbShellInputObject.keyHeadsethook() #

按键 79

processAdbShellInputObject.keyHelp() #

按键 259

processAdbShellInputObject.keyHenkan() #

按键 214

processAdbShellInputObject.keyHome() #

按键 3

processAdbShellInputObject.keyI() #

按键 37

processAdbShellInputObject.keyInfo() #

按键 165

processAdbShellInputObject.keyInsert() #

按键 124

processAdbShellInputObject.keyJ() #

按键 38

processAdbShellInputObject.keyK() #

按键 39

processAdbShellInputObject.keyKana() #

按键 218

processAdbShellInputObject.keyKatakanaHiragana() #

按键 215

processAdbShellInputObject.keyL() #

按键 40

processAdbShellInputObject.keyLanguageSwitch() #

按键 204

processAdbShellInputObject.keyLastChannel() #

按键 229

processAdbShellInputObject.keyLeft #

keyDpadLeft;

processAdbShellInputObject.keyLeftBracket() #

按键 71

processAdbShellInputObject.keyM() #

按键 41

processAdbShellInputObject.keyMannerMode() #

按键 205

processAdbShellInputObject.keyMediaAudioTrack() #

按键 222

processAdbShellInputObject.keyMediaClose() #

按键 128

processAdbShellInputObject.keyMediaEject() #

按键 129

processAdbShellInputObject.keyMediaFastForward() #

按键 90

processAdbShellInputObject.keyMediaNext() #

按键 87

processAdbShellInputObject.keyMediaPause() #

按键 127

processAdbShellInputObject.keyMediaPlay() #

按键 126

processAdbShellInputObject.keyMediaPlayPause() #

按键 85

processAdbShellInputObject.keyMediaPrevious() #

按键 88

processAdbShellInputObject.keyMediaRecord() #

按键 130

processAdbShellInputObject.keyMediaRewind() #

按键 89

processAdbShellInputObject.keyMediaSkipBackward() #

按键 273

processAdbShellInputObject.keyMediaSkipForward() #

按键 272

processAdbShellInputObject.keyMediaStepBackward() #

按键 275

processAdbShellInputObject.keyMediaStepForward() #

按键 274

processAdbShellInputObject.keyMediaStop() #

按键 86

processAdbShellInputObject.keyMediaTopMenu() #

按键 226

processAdbShellInputObject.keyMenu() #

按键 82

processAdbShellInputObject.keyMetaLeft() #

按键 117

processAdbShellInputObject.keyMetaRight() #

按键 118

processAdbShellInputObject.keyMinus() #

按键 69

processAdbShellInputObject.keyMoveEnd() #

按键 123

processAdbShellInputObject.keyMoveHome() #

按键 122

processAdbShellInputObject.keyMuhenkan() #

按键 213

processAdbShellInputObject.keyMusic() #

按键 209

processAdbShellInputObject.keyMute() #

按键 91

processAdbShellInputObject.keyN() #

按键 42

processAdbShellInputObject.keyNavigateIn() #

按键 262

processAdbShellInputObject.keyNavigateNext() #

按键 261

processAdbShellInputObject.keyNavigateOut() #

按键 263

processAdbShellInputObject.keyNavigatePrevious() #

按键 260

processAdbShellInputObject.keyNotification() #

按键 83

processAdbShellInputObject.keyNum() #

按键 78

processAdbShellInputObject.keyNumLock() #

按键 143

processAdbShellInputObject.keyNumpad0() #

按键 144

processAdbShellInputObject.keyNumpad1() #

按键 145

processAdbShellInputObject.keyNumpad2() #

按键 146

processAdbShellInputObject.keyNumpad3() #

按键 147

processAdbShellInputObject.keyNumpad4() #

按键 148

processAdbShellInputObject.keyNumpad5() #

按键 149

processAdbShellInputObject.keyNumpad6() #

按键 150

processAdbShellInputObject.keyNumpad7() #

按键 151

processAdbShellInputObject.keyNumpad8() #

按键 152

processAdbShellInputObject.keyNumpad9() #

按键 153

processAdbShellInputObject.keyNumpadAdd() #

按键 157

processAdbShellInputObject.keyNumpadComma() #

按键 159

processAdbShellInputObject.keyNumpadDivide() #

按键 154

processAdbShellInputObject.keyNumpadDot() #

按键 158

processAdbShellInputObject.keyNumpadEnter() #

按键 160

processAdbShellInputObject.keyNumpadEquals() #

按键 161

processAdbShellInputObject.keyNumpadLeftParen() #

按键 162

processAdbShellInputObject.keyNumpadMultiply() #

按键 155

processAdbShellInputObject.keyNumpadRightParen() #

按键 163

processAdbShellInputObject.keyNumpadSubtract() #

按键 156

processAdbShellInputObject.keyO() #

按键 43

processAdbShellInputObject.keyP() #

按键 44

processAdbShellInputObject.keyPageDown() #

按键 93

processAdbShellInputObject.keyPageUp() #

按键 92

processAdbShellInputObject.keyPairing() #

按键 225

processAdbShellInputObject.keyPaste() #

按键 279

processAdbShellInputObject.keyPeriod() #

按键 56

processAdbShellInputObject.keyPictsymbols() #

按键 94

processAdbShellInputObject.keyPlus() #

按键 81

processAdbShellInputObject.keyPound() #

按键 18

processAdbShellInputObject.keyPower() #

按键 26

processAdbShellInputObject.keyProgBlue() #

按键 186

processAdbShellInputObject.keyProgGreen() #

按键 184

processAdbShellInputObject.keyProgRed() #

按键 183

processAdbShellInputObject.keyProgYellow() #

按键 185

processAdbShellInputObject.keyQ() #

按键 45

processAdbShellInputObject.keyR() #

按键 46

processAdbShellInputObject.keyRefresh() #

按键 285

processAdbShellInputObject.keyRight #

keyDpadRight;

processAdbShellInputObject.keyRightBracket() #

按键 72

processAdbShellInputObject.keyRo() #

按键 217

processAdbShellInputObject.keyS() #

按键 47

processAdbShellInputObject.keyScrollLock() #

按键 116

processAdbShellInputObject.keySearch() #

按键 84

processAdbShellInputObject.keySemicolon() #

按键 74

processAdbShellInputObject.keySettings() #

按键 176

processAdbShellInputObject.keyShiftLeft() #

按键 59

processAdbShellInputObject.keyShiftRight() #

按键 60

processAdbShellInputObject.keySlash() #

按键 76

processAdbShellInputObject.keySleep() #

按键 223

processAdbShellInputObject.keySoftLeft() #

按键 1

processAdbShellInputObject.keySoftRight() #

按键 2

processAdbShellInputObject.keySoftSleep() #

按键 276

processAdbShellInputObject.keySpace() #

按键 62

processAdbShellInputObject.keyStar() #

按键 17

processAdbShellInputObject.keyStbInput() #

按键 180

processAdbShellInputObject.keyStbPower() #

按键 179

processAdbShellInputObject.keyStem1() #

按键 265

processAdbShellInputObject.keyStem2() #

按键 266

processAdbShellInputObject.keyStem3() #

按键 267

processAdbShellInputObject.keyStemPrimary() #

按键 264

processAdbShellInputObject.keySwitchCharset() #

按键 95

processAdbShellInputObject.keySym() #

按键 63

processAdbShellInputObject.keySysrq() #

按键 120

processAdbShellInputObject.keySystemNavigationDown() #

按键 281

processAdbShellInputObject.keySystemNavigationLeft() #

按键 282

processAdbShellInputObject.keySystemNavigationRight() #

按键 283

processAdbShellInputObject.keySystemNavigationUp() #

按键 280

processAdbShellInputObject.keyT() #

按键 48

processAdbShellInputObject.keyTab() #

按键 61

processAdbShellInputObject.keyTv() #

按键 170

processAdbShellInputObject.keyTvAntennaCable() #

按键 242

processAdbShellInputObject.keyTvAudioDescription() #

按键 252

processAdbShellInputObject.keyTvAudioDescriptionMixDown() #

按键 254

processAdbShellInputObject.keyTvAudioDescriptionMixUp() #

按键 253

processAdbShellInputObject.keyTvContentsMenu() #

按键 256

processAdbShellInputObject.keyTvDataService() #

按键 230

processAdbShellInputObject.keyTvInput() #

按键 178

processAdbShellInputObject.keyTvInputComponent1() #

按键 249

processAdbShellInputObject.keyTvInputComponent2() #

按键 250

processAdbShellInputObject.keyTvInputComposite1() #

按键 247

processAdbShellInputObject.keyTvInputComposite2() #

按键 248

processAdbShellInputObject.keyTvInputHdmi1() #

按键 243

processAdbShellInputObject.keyTvInputHdmi2() #

按键 244

processAdbShellInputObject.keyTvInputHdmi3() #

按键 245

processAdbShellInputObject.keyTvInputHdmi4() #

按键 246

processAdbShellInputObject.keyTvInputVga1() #

按键 251

processAdbShellInputObject.keyTvMediaContextMenu() #

按键 257

processAdbShellInputObject.keyTvNetwork() #

按键 241

processAdbShellInputObject.keyTvNumberEntry() #

按键 234

processAdbShellInputObject.keyTvPower() #

按键 177

processAdbShellInputObject.keyTvRadioService() #

按键 232

processAdbShellInputObject.keyTvSatellite() #

按键 237

processAdbShellInputObject.keyTvSatelliteBs() #

按键 238

processAdbShellInputObject.keyTvSatelliteCs() #

按键 239

processAdbShellInputObject.keyTvSatelliteService() #

按键 240

processAdbShellInputObject.keyTvTeletext() #

按键 233

processAdbShellInputObject.keyTvTerrestrialAnalog() #

按键 235

processAdbShellInputObject.keyTvTerrestrialDigital() #

按键 236

processAdbShellInputObject.keyTvTimerProgramming() #

按键 258

processAdbShellInputObject.keyTvZoomMode() #

按键 255

processAdbShellInputObject.keyU() #

按键 49

processAdbShellInputObject.keyUp #

keyDpadUp;

processAdbShellInputObject.keyV() #

按键 50

processAdbShellInputObject.keyVoiceAssist() #

按键 231

processAdbShellInputObject.keyVolumeDown() #

按键 25

processAdbShellInputObject.keyVolumeMute() #

按键 164

processAdbShellInputObject.keyVolumeUp() #

按键 24

processAdbShellInputObject.keyW() #

按键 51

processAdbShellInputObject.keyWakeup() #

按键 224

processAdbShellInputObject.keyWindow() #

按键 171

processAdbShellInputObject.keyX() #

按键 52

processAdbShellInputObject.keyY() #

按键 53

processAdbShellInputObject.keyYen() #

按键 216

processAdbShellInputObject.keyZ() #

按键 54

processAdbShellInputObject.keyZenkakuHankaku() #

按键 211

processAdbShellInputObject.keyZoomIn() #

按键 168

processAdbShellInputObject.keyZoomOut() #

按键 169

processAdbShellInputObject.swipe #

向手机发送一系列连续的触摸事件以模拟手势(Gesture)或滑动(Sliding)。

processAdbShellInputObject.swipe(x1,y1,x2,y2,duration) #

从 x1,y1 坐标滑动到 x2,y2 坐标。
可选用 duration 指定持续时间,以毫秒为单位。
原地滑动发送长按事件

processAdbShellInputObject.tap #

模拟触模输入事件

processAdbShellInputObject.tap(x,y) #

参数 x,y 指定坐标

Markdown 格式