RME:不申请 INTERNET 权限的开源 Android 文档扫描器
Show HN: RME – open-source Android scanner with no INTERNET permission
SynapseWorks 开源 Android 文档扫描器 RME v1.7.0,采用 Apache-2.0 许可,应用本身不申请 INTERNET 和 ACCESS_NETWORK_STATE 权限,文档、缩略图与 OCR 文本均保存在应用私有本地库中。
隐私优先、本地优先、开源的 Android 文档扫描应用,支持多语言设备端 OCR、全库搜索、可搜索 PDF、更安全的分享、可移植备份,且无需 RME 账户或云后端。
Google Play · 网站 · v1.7.0 版本发布 · 隐私 · Apache-2.0 许可证
无广告。无账户。无 RME 分析或跟踪。无专有 RME 后端。文档可保留在应用私有的本地库中,RME 本身既不请求 INTERNET 也不请求 ACCESS_NETWORK_STATE 权限。
你可以做什么
- 扫描和导入:扫描多页纸质文档;通过 Android 系统选择器导入 PDF、JPEG、PNG 或 WebP 文件;或通过 Android 分享接收受支持的文件。
- 识别和搜索:运行设备端拉丁文 OCR,或通过 Google Play 服务提供的可选中文、日文、韩文和天城文模型。查看并更正文本,对单页或整个文档重新运行 OCR,使用批量 OCR,在整个库中搜索识别出的文本,并跳转到匹配页面。
- 本地整理:将文档保存在应用私有的本地库中,支持文件夹和子文件夹。重命名、移动、排序、搜索、重新打开,并使用本地智能命名,无需 RME 账户或云服务。
- 编辑和导出:添加、重新排序、旋转、删除和增强页面。生成可搜索 PDF,导出 PDF 或 JPEG 页面,提取文本,并通过 Android 系统流程保存或分享。
- 使用 PDF 工具:合并文档,拆分或提取页面,并使用 Fit Upload Limit,支持 200 KB、500 KB、1 MB、2 MB 或自定义目标。RME 使用可读性感知处理,并在文档已符合要求时避免不必要的重新压缩;并非每个任意限制都能实现。
- 准备安全分享副本:创建单独副本,支持破坏性黑条遮盖脱敏、用途/日期水印、可选文件大小目标,并在保存或分享前进行最终预览。原始文件保持不变。
- 复印双面卡片:将合成或用户提供的卡片正面和背面放在一张 A4 或 Letter 页面上,导出前可缩放/平移查看。
- 迁移现有扫描件:从其他扫描仪应用导入标准用户导出的 PDF 和图像,包括 CamScanner、Adobe Scan / Acrobat、Genius Scan 和 Microsoft Lens。RME 不会访问其他应用的私有存储、数据库、账户或云。
- 备份和传输:创建和恢复可移植备份,可选加密备份文件,并将 RME 库迁移到新手机。
- 保护应用访问:可选在打开 RME 时要求 Android 设备身份验证。
安装
从 Google Play 或 GitHub Releases 上的 APK 获取 RME PDF Scanner。当前稳定版本是 v1.7.0,发布于 2026 年 10 月。发布版本经过单元测试、仪器测试、无障碍测试和设备测试。
隐私
保存的文档、缩略图、元数据和可选 OCR 文本都保存在 RME 的应用私有本地库中。识别和文档内容处理在设备端运行。RME 不运营接收或存储你文档的后端,不要求账户,不显示广告,也不运行自己的分析或跟踪。导出通过 Android 系统保存和分享流程发送到你选择的目标或接收应用。RME 本身既不请求 INTERNET 也不请求 ACCESS_NETWORK_STATE 权限。
RME 使用 Google ML Kit 文档扫描器和 ML Kit 文本识别;这些 Google 组件不属于 RME 的开源代码。拉丁文识别已随应用打包。可选的中文、日文、韩文和天城文 OCR 模型以及扫描器资源,可能由 Google Play 服务下载或更新。在所需模型可用后,识别在设备端运行。ML Kit 可能按照 Google 的做法发送技术诊断信息。这并不承诺每个系统组件都能在没有网络访问的情况下工作。请阅读完整隐私政策和第三方声明。
开源与开发
该应用使用 Kotlin 编写,采用 Jetpack Compose 和 Material 3。其本地库和搜索使用 Room/FTS;文档工作流使用 Android 系统选择器和分享、Google ML Kit 以及 PdfBox Android。RME 的源代码采用 Apache-2.0 许可;并非所有依赖项都是开源的。更多详情请参阅架构概览。最低 Android API 级别:26;目标 API 级别:36。
要从源代码构建,请使用 JDK 17 和 API 36 的 Android SDK。仓库包含 Gradle 8.14.3 wrapper,并使用 Android Gradle Plugin 8.13.0;请使用支持该工具链的 Android Studio 版本。
git clone https://github.com/lucianRME/rme-pdf-scanner.git
cd rme-pdf-scanner
./gradlew assembleDebug调试 APK 会写入 app/build/outputs/apk/debug/。发布签名凭据未包含在仓库中;有关本地验证和发布构建,请参阅发布签名指南。
⭐ 表达你的支持
如果 RME 对你有用,请考虑支持该项目:
- ⭐ 给这个仓库加星 — 这能帮助更多人发现 RME
- 🐛 报告问题 — 错误报告和真实反馈有助于改进应用
- 💡 建议功能 — 欢迎通过 GitHub Issues 提出想法
- 📣 分享 RME — 尤其是分享给正在寻找隐私优先 Android 扫描器的人
- 🔧 贡献 — 欢迎代码贡献和改进
贡献与支持
欢迎提交问题和功能请求以及代码贡献。请不要在报告或测试材料中附上敏感文档。
请访问 SynapseWorks 或其支持页面。如需公开支持,请发送电子邮件至 support@synapseworks.org;如需报告安全问题,请发送电子邮件至 security@synapseworks.org。
RME 原名为 PageHarbor。为保持升级兼容性,Android 应用 ID 仍为 org.synapseworks.pageharbor。
许可证
RME PDF Scanner 根据 Apache License 2.0 许可。
Apache License 2.0 适用于 RME 源代码。RME、RME PDF Scanner 和 SynapseWorks 名称及相关徽标、图标和品牌标识未根据该许可授予用于衍生应用品牌的权限。分支可以准确说明其来源,但应使用自己的产品标识。请参阅 TRADEMARKS.md。
来源:Hacker News · github.com