【免费下载链接】FairScan
An Android app to scan your documents — simple and respectful
FairScan 是一款专为 Android 打造的轻量文档扫描应用,它的断点续扫功能可以把已扫描的每一页自动保存到本地,中途退出或关闭 App 后再打开,仍能一键继续上次未完成的扫描。本文带你快速掌握这个功能的完整用法:什么时候会触发续扫界面、如何继续扫描、如何丢弃重来,以及它背后的自动保存机制,几分钟即可上手。
什么是断点续扫?它帮你解决什么问题
📄 想象这样一个场景:你正在扫描一份 50 页的合同,扫到第 30 页时来电打断了工作,只好退出 App。如果每次都要从零开始,岂不是要重新拍 30 张?
FairScan 的断点续扫(Resume Scan)功能正是为此而生:
- 自动保存:每拍一页,App 会立刻把处理后的页面和原始照片写入应用私有目录,无需手动"保存"
- 启动检测:再次打开 App 时,如果发现上次还有未导出的页面,会先进入"继续扫描"选择页
- 两种选择:继续上次的扫描,或丢弃当前进度、开始一份全新扫描
相关能力在版本更新日志中也有明确记录:
On startup, you can now explicitly choose to resume the current scan or start a new one —— 见 90.txt
自动保存机制:FairScan 如何记住你的每一页
你不需要做任何额外操作,续扫能力来自 App 的持久化设计:
- 页面落盘:每张照片被处理(裁剪、透视校正、增强)后,文件会写入
scanned_pages目录,原始照片存入sources目录,见 ImageRepository.kt - 元数据记录:页面顺序、旋转角度、颜色模式等信息记录在
document.json中,重启后按原顺序恢复 - 启动判断:App 启动时读取已保存页面,只要页面数不为空,就自动跳转到续扫选择页,核心逻辑位于 MainViewModel.kt
💡 整个过程全部在本机完成,文档不会上传到任何服务器,这也符合 FairScan "simple and respectful" 的隐私设计理念。
三种常见场景与操作步骤
场景一:中途退出,下次继续扫
这是最典型的断点续扫场景,步骤如下:
| 步骤 | 操作 | 结果 |
|---|---|---|
| 1 | 扫描若干页后,直接按 Home 键或退出 App | 页面已自动保存 |
| 2 | 重新打开 FairScan | 进入"继续扫描"选择页 |
| 3 | 点击Resume scan按钮 | 回到相机界面,可继续拍摄新页面 |
| 4 | 扫完后在文档页导出 PDF | 一份完整的文档生成 |
场景二:不再扫这份文档,丢弃当前进度重新开始
如果上次的扫描已经不需要了(比如拍错了文档),在同一个选择页点击New scan按钮即可:
- App 会清空已保存的页面文件与元数据(清空逻辑见 ImageRepository.kt)
- 随后直接进入相机界面,从零开始新扫描
⚠️ 注意:丢弃操作不可撤销,清空前请确认旧进度确实不需要了。
场景三:扫描完成后正常导出,进度自动归零
导出流程结束后点击关闭扫描,App 同样会调用startNewDocument()清理会话目录,下次启动就不会再弹续扫页,直接进入相机界面。也就是说:
- ✅ 有未导出的页面 → 启动时显示续扫页
- ✅ 已导出或已丢弃 → 启动时直接进入相机
这个行为由 SessionViewModel.kt 中按启动模式区分会话目录的设计保证,普通启动(NORMAL 模式)的会话目录在导出清理后即恢复空状态。
续扫选择页界面详解
打开 App 后看到的续扫选择页由 ResumeScanScreen.kt 实现,界面分为上下两区(横屏时为左右两区):
上半区——继续当前扫描
- 展示第一页的缩略图,帮你确认这是不是上次扫的那份文档
- 显示"Current scan + 当前页数",例如当前已扫 5 页
- 蓝色的Resume scan大按钮:点击后进入相机界面,继续拍摄
下半区——丢弃并开始新扫描
- 提示文案"Discard the current scan"
- New scan大按钮:点击后清空当前文档并进入相机界面
界面在竖屏与横屏下都会自适应布局,按钮区域足够大,单手可轻松点按,适合边拿文档边操作的场景。
常见问题 FAQ
Q1:为什么这次打开 FairScan 没有显示续扫页?说明上次扫描的所有页面都已导出或已丢弃,会话目录是空的。只要有未导出的页面,App 启动时就一定会先进入续扫选择页,逻辑见 MainViewModel.kt。
Q2:续扫后新拍的页和旧的页顺序对吗?对。页面顺序由document.json元数据统一维护,新页追加到末尾;你还可以在文档页面中手动拖动调整页面顺序、旋转或删除单页。
Q3:从其他 App 调用 FairScan 生成 PDF 时,会弹续扫页吗?不会。通过SCAN_TO_PDF等外部动作唤起时,App 以EXTERNAL_SCAN_TO_PDF模式运行,使用独立临时会话目录,结束后自动清理,与日常扫描进度互不干扰,模式定义见 LaunchMode.kt。
Q4:扫描的照片占用空间大吗?会被删掉吗?每页会保留处理后的图片和原始照片,体积与拍摄分辨率相关。导出后若开始新扫描,旧文件会随之清理;只要不点 New scan,进度就一直保留。
快速上手清单
- 拍完一页不必手动保存,FairScan 自动落盘
- 中途退出后重新打开 App,出现续扫页即有未完成文档
- 看第一页缩略图确认文档,点Resume scan继续
- 不要这份文档就点New scan丢弃重来
- 导出 PDF 并关闭后,进度自动清空
FairScan 用"自动保存 + 启动检测 + 二选一确认"三步,把断点续扫做成了无感体验:你永远不必担心扫描到一半的进度丢失,拿起手机就能接着扫。
【免费下载链接】FairScan
An Android app to scan your documents — simple and respectful
相关推荐
Docker PostgreSQL镜像终极指南:从版本选择到生产部署的完整方案
Docker PostgreSQL镜像终极指南:从版本选择到生产部署的完整方案 还在为选择哪个PostgreSQL版本而纠结吗?作为全球最受欢迎的开源关系型数据
数据库云原生LX Music Desktop 2024终极指南:三步安装免费开源跨平台音乐播放器
LX Music Desktop 2024终极指南:三步安装免费开源跨平台音乐播放器 LX Music Desktop 是一款基于 Electron 和 Vue
桌面应用音视频前端解决内网扫描痛点:fscan的任务容错与断点续扫实现指南
解决内网扫描痛点:fscan的任务容错与断点续扫实现指南 在复杂的内网环境中,长时间扫描任务常常面临网络不稳定、设备突然离线等问题,导致扫描中断后需要从头开始。
网络安全渗透测试漏洞扫描应用安全
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考