基础动作
仅 WDA 模式
本模块所有方法依赖 WDA,仅在 WDA 模式下可用。HID 模式下请使用 BleDevice 的 click/swipe 等方法。
from ascript.ios import action
模拟 手指 操作
方法
点击
模拟 手指点击屏幕
- 函数
action.click(x, y=0, duration=20)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| x | int/Point | 是 | 要点击的屏幕X坐标,也可以传入 Point 对象 |
| y | int | 否 | 要点击的屏幕Y坐标(当x为Point时可省略) |
| duration | float | 否 | 点击持续时间,默认20毫秒 |
- 示例
# 模 拟手指点击屏幕坐标 (898,1916)
from ascript.ios import action
action.click(898, 1916)
# 模拟手指长按屏幕坐标 (898,1916) 按住两秒不放
from ascript.ios import action
action.click(898, 1916, 2000)
# 使用 Point 对象点击(如找色/找图返回的结果)
from ascript.ios import action
from ascript.ios.screen import FindColors
p = FindColors.find("243,842,#040404|711,916,#6B6B6B")
if p:
action.click(p)
滑动
模拟 手指滑动屏幕
- 函数
action.slide(x1, y1, x2, y2, duration=200)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| x1 | int | 是 | 滑动起始点X坐标 |
| y1 | int | 是 | 滑动起始点Y坐标 |
| x2 | int | 是 | 滑动结束点X坐标 |
| y2 | int | 是 | 滑动结束点Y坐标 |
| duration | float | 否 | 滑动持续时间,默认200毫秒 |
- 示例
# 模拟手指滑动屏幕 从坐 标(157,798) 滑动至坐标(946,834) ,耗时200毫秒
from ascript.ios import action
action.slide(157, 798, 946, 834)
# 模拟手指滑动屏幕 从坐标(157,798) 滑动至坐标(946,834) ,耗时3000毫秒
from ascript.ios import action
action.slide(157, 798, 946, 834, 3000)
拖拽滑动
模拟 手指拖拽滑动屏幕
- 函数
action.touch_and_slide(from_x, from_y, to_x, to_y,
touch_down_duration=500,
touch_move_duration=1000,
touch_up_duration=500)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| from_x | int | 是 | 滑动起始点X坐标 |
| from_y | int | 是 | 滑动起始点Y坐标 |
| to_x | int | 是 | 滑动结束点X坐标 |
| to_y | int | 是 | 滑动结束点Y坐标 |
| touch_down_duration | int | 否 | 起始点按下的时间长度,默认500毫秒 |
| touch_move_duration | int | 否 | 起点至结束点之间的滑动时长,默认1000毫秒 |
| touch_up_duration | int | 否 | 结束点抬起的时长,默认500毫秒 |
- 示例
# 模拟手指拖拽滑动屏幕 按下坐标(422,1707) 1秒钟 滑动至坐标(946,834) 用时500毫秒,松开手指 ,耗时500毫秒
from ascript.ios import action
action.touch_and_slide(422, 1707, 687, 1714, 1000, 500, 500)
输入
模拟 输入文本
- 函数
action.input(value)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| value | str | 是 | 输入的内容 |
- 示例
# 模拟在当前 '已获取焦点'的的文本框中输入'你好 aslib!'
from ascript.ios import action
action.input("你好 aslib!")
模拟键盘
模拟 模拟键盘
- 函数
action.keys(value)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| value | str | 是 | 按键内容,因为键盘只有英文,数字,标点符号, 因此无法模拟中文. |
- 示例
from ascript.ios import action
action.keys("123?")
模拟按键
按键码表
| 按键值 | 按键描述 | 备注 |
|---|---|---|
| action.KEY_HOME | 模拟home按键 | |
| action.KEY_VOLUMEUP | 模拟音量+ | |
| action.KEY_volumedown | 模拟音量- | |
| action.KEY_POWER | 模拟电源按键 | 仅 hid方法可用 |
| action.KEY_SNAPSHOT | 模拟截屏按键 | 仅 hid方法可用 |
| action.KEY_POWER_AND_HOME | 模拟电源+Home | 仅 hid方法可用 |
模拟按钮
模拟点击手机按钮
- 函数
action.key_press(value)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| value | str | 是 | 按键码表'支持前3个' |
- 示例
# 模拟点击home按键
from ascript.ios import action
action.key_press(action.KEY_HOME)
模拟按钮-HID协议
模拟点击手机按钮,使用键鼠协议
- 函数
action.key_press_hid(key, duration=20)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| key | str | 是 | 按键码表'支持全部' |
| duration | float | 否 | 按住时间,默认20毫秒, 单位毫秒 |
- 示例
# 模拟呼出siri
from ascript.ios import action
action.key_press_hid(action.KEY_POWER, 3000)
双击
模拟 手指双击屏幕
- 函数
action.double_tap(x, y)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| x | int | 是 | 要双击的屏幕X坐标 |
| y | int | 是 | 要双击的屏幕Y坐标 |
- 示例
from ascript.ios import action
action.double_tap(500, 800)
快捷滑动
模拟 手指快速滑动 的便捷方法
from ascript.ios import action
# 向左滑
action.slide_left()
# 向右滑
action.slide_right()
# 向上滑
action.slide_up()
# 向下滑
action.slide_down()
回到桌面
模拟按 Home 键
from ascript.ios import action
action.home()