程序
模式兼容性
本模块部分方法通用(app_start、scheme_start、get_uuid、get_ios_version、get_ip_address、notify、set_clipboard、get_clipboard),部分方法仅 WDA 模式可用(app_stop、app_current、lock、unlock、is_locked、open_url)。
from ascript.ios import system
启动应用
打开已安装的应用。支持通过 名称、Bundle ID、URL Scheme 三种方式启动。
- 函数
system.app_start(bundle_id: str = None, scheme: str = None, name: str = None,
arguments: typing.List[str] = [], environment: typing.Dict[str, str] = {})
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| bundle_id | str | 否 | Bundle ID,如 "com.tencent.xin" |
| scheme | str | 否 | URL Scheme,如 "weixin://" |
| name | str | 否 | App 名称,如 "微信" |
| arguments | List[str] | 否 | 启动参数 |
| environment | Dict[str, str] | 否 | 环境变量 |
智能判断
第一个参数会自动识别:含 . 当作 bundle_id,不含 . 当作 App 名称。所以大部分情况直接传一个参数即可。
已内置 420+ 个常用 App 的名称、Bundle ID 和 URL Scheme 映射,点击查看完整列表。
- 示例
from ascript.ios import system
# 通过名称启动(最简单)
system.app_start("微信")
# 通过 Bundle ID 启动
system.app_start(bundle_id="com.tencent.xin")
# 通过 URL Scheme 启动
system.app_start(scheme="weixin://")
启动顺序
内部会按以下优先级尝试启动:
- URL Scheme 启动
- 名称 → 查表转 Bundle ID → Scheme 启动
- LSApplicationWorkspace 直接启动
- WDA 回退启动
停止应用
关闭已打开的应用
- 函数
system.app_stop(bundle_id: str)
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| bundle_id | str | 是 | 应用id |
- 示例
from ascript.ios import system
# 停止某信
system.app_stop(bundle_id="com.tencent.xin")
获取当前运行应用
获取当前运行的app
- 函数
system.app_current()
- 返回值
AppInfo对象 包行 name,pid,process_arguments,bundle_id 属性.
- 示例
from ascript.ios import system
app = system.app_current()
print(app)
print("名称:", app.name)
print("进程:", app.pid)
print("进程参数:", app.process_arguments)
print("应用id:", app.bundle_id)
启动scheme
打开scheme 协议
如无法打开,请联系官方,告知协议头.
- 函数
system.scheme_start(scheme:str)
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| scheme | str | 是 | scheme 协议内容 |
- 示例
from ascript.ios import system
system.scheme_start("ctrip://......")
打开网页
用Siri搜索网址
- 函数
system.open_url(url:str)
- 参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| url | str | 是 | 启动的网址 如:(http://www.airscript.com) |
- 示例
# 案例:打开AirSctipt 官网
#导包
from ascript.ios import system
# 输入网址,用Siri搜索
system.open_url("http://www.airscript.cn")
是否锁屏
判断当前设备的锁屏状态
- 函数
system.is_locked()
- 返回值
True:已锁屏 ,False:已解锁
- 示例
#导包
from ascript.ios import system
res = system.is_locked()
if res:
print("已经锁屏")
else:
print("已解锁屏幕")
锁屏
设备立刻锁屏
- 函数
system.lock()
- 示例
#导包
from ascript.ios import system
system.lock()