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

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

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



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

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

在线和离线没有谁一定更高级。真正需要回答的是:你的图片能不能上传、应用有没有稳定网络、识别对象是什么,以及你愿不愿意维护云端账号和额度。
在拓展市场中搜索"OCR",也可以直接导入中文网 OCR 拓展。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。