☰
重磅!微信扫码支持GS1 HRI了,能识读GS1-128中的括号了
2026/10/31 17:48:03 网站建设 项目流程

一、前言

笔者做了好几年医疗器械 / 仓库 / 物流方向的扫码工具小程序,一直有个老痛点:早年用微信扫 GS1-128,扫出来的是一串连续、没有分隔符的数字或字母,效期/批号/序列号全连在一起,肉眼根本分不清具体信息,开发者得自己写解析去拆。

结果上周末我维护自己的《UDI 记账本》小程序时,顺手扫了个 GS1-128的条码,愣了一下——微信居然直接给我返回了带括号的格式:

(01)06901234567892(17)250101(10)ABC

作为一个天天跟 GS1、UDI 打交道的人,我对这行括号很敏感。先解释一下它是什么:HRI = Human Readable Interpretation(人眼可读信息),就是印在条码下方、给人看的那行带括号的数字或字母。括号本身并不编码进条码,而是读码器识别到分隔符后,按 GS1 的"应用标识符(AI)字典"自动补上去的——所以同一条码,不同手机解析出的括号样式可能略有差异,但含义一致。

这事其实困扰开发者很多年。翻微信开放社区能看到,从 2020 到 2026 年,断断续续有多条开发者发帖吐槽:用 wx.scanCode 扫 GS1-128 时,FNC1 不可见分隔符被过滤,效期/批号/序列号拆不开,帖子浏览上万人,却一直没等到"已修复"的官方回复。我自己的几款扫码工具,早年也都是自己写解析兜底的。所以当微信突然能返回括号,我才格外留意。

其实早在6月份,微信就已经放出整改的信号了,通过下图也能看出迭代的过程也是不容易的!

二、以前啥样,现在啥样

拿下面这个条码前后对比一下就清楚了:

以前啥样:扫出来是一长串没有分隔符的数字,比如图中第二个条码

1727080110FB0726001213818这样直接连在一起。在微信生态下基本无法精准识别批号和序列号——效期、批号、序列号全连在一起,开发者只能放弃微信生态,转用原生 App 或借助硬件扫码设备来识别,普通用户更是两眼一抹黑。

现在啥样(实测):微信直接返回带括号的 HRI 格式

(17)270801(10)FB0726001(21)3818,效期、批号、序列号各自归位、一眼可读,不用再做任何特殊处理。

关键点:条码里根本不编码任何括号字符。括号是扫码引擎识别到分隔符后,按 GS1 的"应用标识符(AI)字典"自动补上的"人眼可读"格式。微信能返回这串括号,说明它这台设备上的扫码引擎,确实做了 GS1 解析——而且我亲测,小程序里的 wx.scanCode 现在同样会返回带括号的结果。

当然,不同机型/微信版本表现可能略有差异,所以这篇文章你读完后,最该做的事就是自己动手扫一个试试。

三、自测

不用到处找官方公告,自己动手最实在:

  1. 找个 GS1-128 一维码(器械/药品/物流箱贴都有);

  2. 用微信扫码小程序工具扫一扫,看结果是不是带括号的纯文本(注意不要直接使用微信扫一扫,微信会对商品条码自动跳转商品详情的网页,可使用《易扫码》工具进行扫码);

  3. 同一条码,在没更新微信的旧手机上扫对比一下,能反推是不是客户端升级带来的。

手头没现成条码的,可以扫描上文中的条码或下方条码图片。


你手机微信扫个 GS1-128 条码试试,出括号了吗?是什么机型/微信版本?欢迎在评论区留言告诉我,大家一起摸摸支持范围。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询