做拍照搜题、票据录入、商品标签采集,都会碰到同一个问题:App Inventor 怎么做 OCR?
大家最熟悉的是在线识别:把图片交给云端接口,服务端返回文字。这条路今天仍然很好用,在证件、票据、表格等场景里也有更丰富的接口。
现在又多了中文网 OCR 离线拓展。图片不用上传,在 Android 手机上就能完成识别。两条路线不是新旧替换,而是各有所长。

在线 OCR:接入灵活,能力跟着云服务走
在线方案通常先把图片转成 Base64 或接口要求的格式,通过 Web 客户端发送请求,再解析服务端返回的 JSON。
你可以直接对接百度 OCR 等云 API,也可以使用 OCRSpace、NMD OCR 这类已有拓展减少接入工作。识别任务放在服务器完成,手机端压力小,模型维护也由服务商负责。
项目本来就需要联网,或希望使用票据、证件、表格等专用接口时,在线方案更合适。
不过,云接口一般会有额度、频率或费用规则,图片上传也涉及隐私。正式项目最好不要把 Secret Key 直接写进应用,建议由自己的服务端代为鉴权和转发。

离线 OCR:图片留在手机里,没有按次调用
应用经常处于弱网、无网环境,或者图片内容比较敏感时,离线识别会省心很多。
中文网新上架的 OCR 拓展基于 Tesseract 5,内置简体中文模型。导入拓展后,不需要申请 API Key,也不依赖网络,识别过程在手机本地完成,没有云接口的按次调用限制。下面是此拓展的简单演示:



内部采用"输入适配、后台识别、事件回传"的框架。不同来源的图片先统一解码成 Android Bitmap;模型和识别实例由拓展管理;耗时任务进入后台队列,避免卡住界面;完成后通过 Initialized、GotText 和 ErrorOccurred 事件把结果送回积木。Ready 和 Busy 属性可以判断当前状态。
调用只要三步:屏幕打开时调用 Init;等 Initialized 返回成功;再调用对应识别方法,在 GotText 事件中接收文字。

离线也不是万能的。拓展和模型会增加应用体积,速度取决于设备性能;Tesseract 更擅长清晰、端正、对比度高的印刷体,复杂背景和手写字仍需要更好的拍摄与预处理。拓展包含原生库,联机调试需要 2026 年 7 月之后的新版 AI 伴侣,打包 APK 不受影响。
到底选哪一种?
应用必须离线运行、重视隐私、调用量较大,而且以普通印刷文字为主,优先选离线 OCR 拓展。
项目始终联网,需要证件、票据、表格等专项能力时,在线 OCR 更合适。
也可以默认离线识别,遇到复杂图片时,再由用户确认是否提交云端复核。这样能兼顾隐私、成本和识别能力。

在线和离线没有谁一定更高级。真正需要回答的是:你的图片能不能上传、应用有没有稳定网络、识别对象是什么,以及你愿不愿意维护云端账号和额度。
在拓展市场中搜索"OCR",也可以直接导入中文网 OCR 拓展。

169

被折叠的 条评论
为什么被折叠?



