J·
Jev Phone技术与实践说明 / FIELD GUIDE
MULTIMODAL DECISION × VISUAL GROUNDING × DEVICE EXECUTION

Jev Phone · 多模态决策驱动的三端视觉交互通道

通过区域标注、有限选项决策与平台驱动,将语义目标映射为 Android、iOS、HarmonyOS 设备上的点击操作。独立组件供外部系统接入,交互式 Demo 展示执行过程与实测证据。

视觉定位:区域标注与索引决策:多模态有限选择执行:跨平台驱动适配阶段:单步点击验证
N02
FRAME → DECIDE → EXECUTE
CORE / GROUNDING & ACTION BINDING

视觉目标定位与设备动作绑定

目标输入外部应用、脚本与任务系统

步骤和业务判断由调用方掌握。

→
视觉定位与执行组件层级采集 · 区域筛选 · 平台适配
区域索引 · 决策绑定 · 坐标映射

基于系统层级构建候选动作空间,以区域索引约束模型输出。

→
多模态决策与驱动执行视觉识别 → 选项决策 → 点击执行

决策结果绑定当帧区域,由平台驱动执行坐标操作。

模型协议:OpenRouter 多模态 Decisions / OpenAI 官方 Decisions。当前多模态实现使用 OpenAI 决策模型;TypeSafe Jev 的文本接口属于不同后端。

01 / HOW IT WORKS

区域标注与有限动作空间

01语义目标

“点击左上角头像”

→
02系统树+截图

观察当前设备状态

→
03区域标注与索引

候选区域生成与视觉标注

→
04多模态有限决策

N02 / 未找到 / 不确定

→
05坐标点击

编号映射到区域中心

每步独立采集并生成区域索引。请求包含当前目标、候选属性和标注截图;设备服务与网络客户端持续复用。

02 / VISUAL GROUNDING

几何约束与视觉语义融合

系统树中的候选N02bounds: [36,172,…]text: ""位置已知,外观尚未表达N02画面中是头像 → 选择 N02视觉语义与可执行区域关联

系统节点提供几何区域与属性,截图补充文本、图标及外观语义。区域索引将视觉识别结果关联到可执行位置。

结构示意。实际模型输入与执行结果可在演示页逐步查阅。

03 / RESPONSIBILITY

调用方与组件的职责边界

调用方负责目标、步骤顺序、业务判断

应用逻辑、测试流程及任务编排

单步语义目标 ↓
Jev Phone 负责采集 → 候选 → 模型选择 → 点击

返回事件、编号图、坐标与毫秒计时

执行结果与失败状态 ↑

演示层按配置标点拆分并串行提交点击目标,失败时停止后续步骤。组件独立于演示界面和 AI Phone,调用方负责步骤编排与业务判定。

04 / THREE PLATFORMS · REAL EVIDENCE

三端视觉定位与执行验证

以下是 2026-10-11 三端隔离实验的原始编号图。共同目标:点击底部「学习」。真机与模拟器分别标明;标注图展示区域绑定,执行结果依据对应实验记录。

A安卓真机

Android · 选择 N31

Android真机真实实验红框编号图,学习候选N31

UiAutomator2 系统树+截图 → 区域标注 → 模型选择 → 坐标点击。区域索引根据当帧系统层级动态生成。

安卓导航点击实验通过;当前独立包已提供安卓组件,并进一步统一到 UiAutomator2 取树、截图与执行。
iiOS 模拟器

iOS · 选择 N25

iOS模拟器真实实验红框编号图,学习候选N25

WDA / XCTest 快照 → point 与截图 pixel 映射 → 统一候选 → 视觉选择。系统内部名称与画面文字不一致时,图仍能补充语义。

既有导航六动作完成,四次点击走该通道;本独立包尚未接入,未验证 iOS 真机。
HHarmonyOS 模拟器

HarmonyOS · 选择 N47

HarmonyOS模拟器真实实验红框编号图,学习候选N47

UITest / hmdriver2 层级 → 原生图片子区域与父布局边界适配 → 编号图 → 驱动执行。

既有导航六动作完成,四次业务点击走该通道,冷启动曾需要等待;本包尚未接入,未验证鸿蒙真机。

三端实验共享定位流程,通过平台适配处理层级、坐标与驱动差异。当前独立包交付 Android;iOS 与 HarmonyOS 为既有实验验证。

05 / INTEGRATION

独立组件接入

from jev_phone import AndroidClicker

phone = AndroidClicker(
    serial="YOUR_DEVICE_SERIAL",
    api_key=your_key,
    provider="openrouter",  # 或 "openai"
)
try:
    result = phone.click("点击底部的我的")
    print(result["selected"])
    print(result["timings"])
finally:
    phone.close()

不需要 Web 页或数据库。同一实例串行调用;可通过 on_event 接收采集、编号图、选择和点击返回事件。

06 / TIMING

毫秒级通道处理与分段计时

约 15–50 ms本地候选处理、画框与编码
620 ms安卓非模型整轮实测中位
493–729 ms同一导航样本 9 轮范围

数据来自前期安卓常驻 UiAutomator2 实验,不含模型请求、初始化与页面稳定;当前 Web 展示、额外复核和设备负载会改变实际耗时。

模型请求往返上传+网络/网关+服务处理+返回
组件自身处理取树+截图+候选画框+视口复核+点击
单步总时间 = 两部分相加 单位 ms

模型时间采用请求往返口径,包含传输与服务处理。结果截图独立计时;点击接口返回与页面稳定、业务判定分别记录。

客户端空闲连接有效期 60 秒。端到端耗时受网络、模型服务、页面与设备负载影响。

07 / PRACTICE NOTES

当前能力与后续探索

运行环境

安装 Python 依赖、ADB、scrcpy 和 ffmpeg,连接已授权的安卓手机。在演示页填写对应 Key,准备时验证模型通道,然后逐步执行。

模型通道

支持 OpenRouter 多模态 Decisions 与 OpenAI 官方 Decisions,内部适配不同请求和返回协议。两种协议通过适配层归一化决策结果。

明确边界

当前验证并交付的是单步点击。输入、滚动、长按等更多动作需要分别探索区域选择、手势参数与平台承接,还没有作为本组件能力交付。视口复核已加入,同尺寸页面与遮挡变化仍需进一步验证。

证据与密钥

密钥由用户在当前页面填写,使用密码掩码显示。刷新后清除连接与密钥,需重新填写;不回填、不持久化。截图和执行记录保存为本地文件。

Jev Phone · 多模态有限决策、视觉定位与跨平台动作绑定。