Skip to content

Proposal:任意界面一键生成草案 #24

Description

@gac0812

Proposal:任意界面一键生成草案

1 功能描述

任意界面一键生成草案负责回答一个问题:用户正在其他 App 或网页中浏览内容时,如何通过一次明确操作获取当前屏幕,并进入既有的 OCR / 从图生成草案链路。

本能力采用“点击通知栏按钮 → 无障碍一次性截取当前屏 → App 获取该图 → 生成草案”的固定路径。它只负责当前屏取图和后续链路衔接,不后台监听截图、不批量截屏,也不绕过草案确认直接创建正式数据。

2 用户

目标用户

用户分层 特征 取图需求
场景连续型 正在看课表、聊天清单、网页,不愿切回 App 任意界面一点即可取当前屏
隐私敏感型 不接受后台监听或误读相册其他图 只处理点击后自动截的那一张
轻量知情型 可接受自己点一下,不能接受静默截屏 用户触发 + 自动执行截屏

用户故事

用户在浏览网页课表、聊天清单或其他任意界面时,若只能「先系统截图 → 再回 App 上传」,当前场景会被打断;若后台静默取图,又会带来不知情截屏与误取隐私图的风险。用户需要的是:在任意界面点一下通知栏按钮,就把当前屏送进 OCR / 从图生成草案,且取图边界清晰、可预期。

故事 A — 任意界面一键取当前屏

我正在浏览网页课表或聊天里的待办清单,不想切出当前场景去系统截图再回 App。下拉通知栏点「截图识别」→ 自动截当前屏 → App 拿图 → OCR / 从图生成草案。

故事 B — 隐私敏感用户要可控取图

我不接受后台监听全部截图,也不接受「点通知却读到相册里另一张隐私图」。本路径只处理点击后自动截的那一张,取图范围与用户意图对齐。

故事 C — 轻量用户可接受知情点击

我可接受「自己点一下,由 App 自动截当前屏」;不能接受无点击的静默截屏或后台截图流。

共性需求提炼

用「点通知栏按钮 → 自动截当前屏 → App 拿图 → 从图生成草案」换更可控的取图;代价是需要无障碍权限。

3 现有做法以及不足

当前产品内缺少「任意界面一点即取当前屏」的闭环:要么步骤多打断场景,要么取图范围不可控。

现有做法 不足
系统截图后再打开 App 上传 步骤多,易打断当前场景
点通知栏读最近图等其他入口 须先截/存再点通知;可能读到非意图/隐私图
开启后后台监听相册新截图 操作最轻,但误取隐私图风险高
分享菜单把截图传给 App 仍依赖先截图再分享

共同不足:有「能上传图」无「任意界面一点即取当前屏」;有轻操作路径却难控隐私边界;有手动上传却打断当前场景。

4 产品范围

状态 事项 依据
常驻通知栏操作按钮作为入口 任意界面可达,无需先回 App
用户点击后由无障碍一次性自动截当前屏,App 拿图后送 OCR / 从图生成草案 核心路径;无障碍仅作执行层
每次点击只截一次;确认前不写入正式数据 可控取图 + 与多模态草案确认边界对齐
不做 点通知后读 MediaStore / 相册最近图再生成草案 非本提案入口;可能读到非意图图
不做 后台自动监听相册 / 新截图 隐私风险高;不在本提案范围内
不做 后台持续截屏或批量截屏 本提案只做 one-shot、用户触发

边界一句话:本文档提案「点通知栏按钮 → 自动截图 → App 拿图 → 从图生成草案」;负担是需要无障碍权限。

5 关键决策

决策:取图方式

方案 描述 选择
A. 开启后后台监听相册新截图 操作最轻,系统截图即触发 ❌ 误取隐私图风险高
B. 点通知栏按钮后无障碍自动截当前屏 点击触发、只截当前一张 ✅ 选中

选择 B,理由:在「低摩擦」与「可控取图」之间取得平衡;代价是需要无障碍权限。

配套规则:

  • 截图必须由用户点击通知栏按钮触发;无点击不截屏
  • 无障碍只作执行层自动截屏,不做后台监听
  • 每次点击只截一次(one-shot)
  • 确认前不写入正式数据;后续走既有 OCR / 从图生成草案流程

替代方案

后台自动监听相册新截图:操作最省,但隐私风险过高,不纳入本提案。点通知后读最近已存截图:须先截/存,可能读到非意图图,亦不作为本提案路径。

6 边界规则与异常处理

边界规则

  • 本期只覆盖 Android;依赖通知入口与无障碍的一次性截屏能力。
  • 截屏必须由用户当次点击触发,无点击不得取图。
  • 一次点击最多截取当前屏一次;不得持续、定时或批量截屏。
  • 获取的图片只进入既有 OCR / 多模态草案链路;用户确认前不得写入正式 ScheduleTodoGoal
  • 无障碍只承担执行层截屏,不读取界面语义,也不承担后台监听。

异常场景与处理方式

场景 触发条件 系统行为 依据/原则
通知权限未开启 系统无法展示稳定通知入口 引导用户开启通知权限;不开启则不提供该入口 入口必须可见、可控
无障碍权限未开启 用户点击入口但系统无法代为截屏 引导授权,不降级为后台读相册或静默监听 不改变取图语义
系统禁止截取当前屏 当前页面启用了安全窗口等限制 明确提示无法截取,不读取其他历史图片替代 不处理非用户意图图片
截屏或图片交接失败 未获得有效图片 本次流程失败并允许重试,不创建空草案 失败不污染正式数据
处理中重复点击 上一次 one-shot 尚未完成 忽略重复触发或提示正在处理,不并发多次截屏 一次意图对应一次处理
OCR / 草案生成失败 图片已取得但下游处理失败 展示失败原因并允许重试;保留“确认前不落正式数据”的边界 下游失败可恢复
用户取消草案 已进入草案页但用户不确认 丢弃本次临时结果,不创建正式事项 用户确认后才落库

7 基本概念与信息结构

本提案的产品面是通知栏操作按钮,不是 App 内表单或数据模型入口。用户在任意界面下拉通知栏,点「截图识别」(或同等文案)即触发取图;系统需无障碍权限,由无障碍在当次点击后一次性自动截当前屏,App 拿到该图后进入既有「从图生成草案」界面(OCR / 多模态后续,确认前不写入正式数据)。

交互流程:

任意界面 → 下拉通知栏 → 点操作按钮
→ 无障碍自动截当前屏(one-shot)
→ App 拿图
→ 打开从图生成草案 UI / 多模态后续

8 验收标准

用例 操作 通过标准
任意界面触发 在其他 App 或网页中下拉通知栏并点击“截图识别” 只截取点击时的当前屏,并进入从图生成草案链路
一次点击一次截屏 点击一次通知入口 最多生成一张本次图片和一份处理任务,不持续截屏
无点击不截屏 开启权限后正常使用其他 App,但不点击入口 系统不截屏、不监听截图流、不读取相册图片
权限缺失 未开启通知或无障碍权限时点击入口 给出对应授权提示,不静默失败,不改走后台监听
安全页面限制 在系统禁止截屏的页面触发 明确提示无法截取,不拿历史图片冒充当前屏
草案确认边界 截屏识别成功后查看数据 确认前不存在正式 ScheduleTodoGoal;确认后才由既有模块创建
处理失败 模拟截屏交接或 OCR 失败 给出失败状态并允许重试,不创建空白或错误正式事项
重复点击 首次处理未完成时再次点击 不产生并发多次截屏或重复草案

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions