输入文字为什么难,三级方案总览
点击、滑动、截图都有成熟做法。往输入框里打字在 iOS 上麻烦得多:系统不允许第三方 App 随意写入文本。安卓可以通过无障碍服务或 IME 直接输入,iOS 没有同类开放接口。EasyClick 的 iOS USB 版本按手上的条件排了三级输入方案:
| 级别 | 方案 | 需要什么 | 函数/模块 | 体验 |
|---|---|---|---|---|
| 第一级 | 代理输入 | 代理 IPA | inputText |
最直接高效 |
| 第二级 | 自定义输入法 | EC 脱机版主程序 | imeApi 模块 |
接近原生输入法 |
| 第三级 | 快捷指令助手 | 电脑端助手程序 + 快捷指令 | 剪贴板粘贴 | 配置繁琐但可复用 |
三级按可用条件排序。靠前的条件满足就用靠前的方案,不满足再往下降。三种方案可以同时存在:同一套中控里,有代理的设备用 inputText,没代理的设备用 imeApi 或快捷指令助手。
三级方案怎么配
第一级是代理模式的 inputText。有代理 IPA 并能启动自动化时,一行代码就能输入:
inputText('要输入的文字');
它不用额外配置,能写进任意可编辑文本框,也可以配合代理模式的节点、相册等能力。前提是安装代理 IPA 并启动自动化服务,这依赖签名。没有签名、没有代理 IPA,就用不了这一级,要降到后面两级。若用苹果个人开发者账号自己签名,年费 688 元,可签 100 台设备,系统要求 iOS 12 及以上。这笔是苹果的签名费用,不是 EasyClick 的软件价格。注意先让输入框获得焦点,再调 inputText。密码框等特殊输入框可能有限制,要实测。输入中文时确认编码,避免乱码。长文本要注意超时,免得输入时间过长把脚本打断。它通过代理 IPA 的系统级权限,直接向当前焦点控件写入文本,跳过键盘交互,所以速度最快,兼容性也最好。
第二级是 imeApi 自定义输入法。没有代理 IPA、但装了 EC 脱机版本主程序作为输入法时,可以用 imeApi 模块。脱机方案只支持 iOS 15 及以上。主程序从 v7.2.0 起可以充当 USB 自动化程序,不必再同时安装代理 IPA;官方下载页有预签好的 IPA,用来测试,iOS 15 以下不能这么用。7.0.0 起,单应用模式只装主程序;双应用模式还要再装代理 IPA。步骤是在手机上安装 EC 脱机版本主程序;在输入法列表中启用它(设置 → 通用 → 键盘 → 添加新键盘);先开启转发服务 imeApi.forwardImeServer();,再调用其他 imeApi 函数完成输入。免代理也能输入,不需要签名 IPA,只需脱机版主程序,也可以配合免费签名方案安装,手感接近系统输入法。forwardImeServer 在脚本初始化阶段调用一次即可,不需要每次输入前都调。输入法要切到 EC 脱机版主程序,否则输入会失败。没有反应时,先看系统有没有把输入法切回原生键盘。iOS 可能提示「允许完全访问」,要在输入法设置里打开。主程序注册为系统输入法后,forwardImeServer 在手机上启动一个本地转发服务。脚本调用输入函数时,指令经转发服务传给输入法,再以系统输入法身份写入当前焦点控件。走的是 iOS 输入法框架的接口,不占用代理 IPA 的系统权限。
第三级是快捷指令助手。前两个都没有时用它,做法是复制到剪贴板再粘贴:iOS 快捷指令请求电脑端接口,拿到内容后写入剪贴板,再触发粘贴。到 EC 官方网盘下载 iOS 资源里的 iOS 快捷指令助手.zip,解压后在电脑上双击运行。手机快捷指令新建指令,请求网站接口内容,再复制到剪贴板。接口地址形如 http://192.168.2.26:8696,key=4eb2e1c1 是手机唯一标识,可以用蓝牙 MAC 地址区分设备。加上设备震动,后台也能取到数据。最后回调 suc 接口,告知执行成功。在手机「设置 → 辅助功能 → 键盘与键入 → 全键盘控制 → 命令」给这条快捷指令绑定快捷键。中控右键,进蓝牙或 OTG HID 设置,新增键盘快捷键,绑定组合键(如 gui+u),点击发送。再次进入新增快捷键,输入相同组合键发送,就能看到快捷指令执行。脚本里调用对应事件函数触发。配置要点:
| 配置项 | 说明 |
|---|---|
| 电脑 IP | 运行快捷指令助手的电脑的局域网 IP |
| key 参数 | 手机唯一标识,用蓝牙 MAC 地址区分不同手机 |
| 设备震动 | 保证快捷指令在后台也能执行并取到数据 |
| suc 回调 | 通知程序执行成功,便于脚本判断输入是否完成 |
| 快捷键绑定 | 全键盘控制命令中绑定,中控中映射到 gui+字符组合键 |
配置步骤多一些,配好后可以分享给其他手机。没有代理时,插入视频或图片到相册也能用快捷指令:新建指令取两次「获取 URL 内容」,第一次拿真实资源地址,第二次拿资源内容,绑定 gui+i 快捷键,脚本中触发即可插入相册。先用一台手机跑通整条通道,再复制到其他设备。
快捷指令流程:
获取 URL 内容(接口地址) → 得到真实资源 URL
↓
获取 URL 内容(真实资源 URL) → 得到资源内容
↓
存储到相册 → 回调 suc
怎么选、怎么混用、怎么排查
| 你的环境 | 推荐方案 | 理由 |
|---|---|---|
| 有代理 IPA | inputText | 最直接高效,一行代码完成输入 |
| 无代理但有脱机主程序 | imeApi | 免签名也能打字,体验接近原生 |
| 都没有 | 快捷指令助手 | 零安装兜底,可分享复用 |
| 混合设备群 | 按设备混用 | 方案互不冲突,中控按设备类型选 |
设备群中有不同条件的设备时,可以在脚本里按设备类型选择输入方案:
// 伪代码:按设备条件选择输入方案
if (hasAgent) {
inputText('文字内容'); // 有代理
} else if (hasMainApp) {
imeApi.forwardImeServer(); // 有脱机主程序
imeApi.inputText('文字内容');
} else {
bleEvent.keyPressChar('u'); // 快捷指令助手
}
这种设计让一套中控同时管理不同条件的设备,每台用最适合的方案;实际部署时建议在设备台账中标注每台设备支持的输入方案,脚本运行时自动匹配,避免因方案不匹配导致输入失败。输入失败可以按上面的顺序逐项排查:
| 现象 | 可能原因 | 处理 |
|---|---|---|
| inputText 无反应 | 代理未启动或输入框未获焦点 | 确认代理运行状态,先点击输入框 |
| imeApi 无反应 | 转发服务未开启或输入法未切换 | 调 forwardImeServer,切换到 EC 输入法 |
| 快捷指令不触发 | 快捷键未绑定或助手未运行 | 检查中控快捷键绑定,确认电脑端助手在运行 |
| 输入乱码 | 编码问题 | 确保脚这份文档编码为 UTF-8 |
| 后台无法输入 | 快捷指令被系统挂起 | 确认设备震动动作已添加 |
三种方案横向对比:
| 维度 | inputText | imeApi | 快捷指令助手 |
|---|---|---|---|
| 需要代理 | 是 | 否 | 否 |
| 需要主程序 | 否 | 是 | 否 |
| 配置复杂度 | 最低 | 中等 | 较高 |
| 输入速度 | 最快 | 快 | 较慢(网络请求) |
| 可复用性 | 每台都可用 | 每台装主程序 | 配好后可分享 |
| 适用场景 | 有签名设备 | 免签名有主程序 | 零安装兜底 |
有签名就用 inputText,只有脱机主程序就用 imeApi,两个都没有就把文字放进剪贴板再粘贴。混合设备群按设备类型各用各的。
关于 EasyClick:手机自动化脚本开发平台,覆盖安卓免 ROOT、iOS 免越狱、鸿蒙三大手机生态,还提供苹果脚本编写、苹果群控、安卓群控、远程云控、AI 群控手机等。→ 了解全部产品
想要真实跑起来?
本文介绍的方案均可在 EasyClick 手机自动化平台落地。官网提供完整文档、开发工具与群控云控产品,免费体验。