天天看点

飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码

部分朋友不需要打印机的业务,则 忽略有关打印机的部分 即可。

其他有关 微信小程序配置的介绍是通用的!通用的!

生成正方形小程序码,请看 标题一。

扫普通链接生成的二维码打开小程序,请看 标题二。

目录

    • 场景
    • 问题
    • 一、嵌入小程序首页
    • 二、嵌入小程序指定页面
    • 总结

场景

前段时间公司引入了飞鹅打印机,官方文档:飞鹅传送门

公司指定要在打印的小票中嵌入二维码,指向公司小程序的指定页面(带参)。

比如打印一个订单,要嵌入一个二维码,扫码即可进入下单的店铺页面(非首页)。

问题

官方文档给出的嵌入二维码的方式是标签+链接。

在标签内部嵌入简短内容或者网址,打印室会自动生成包含嵌套信息的二维码,扫码即可展示文字内容或者跳转网址。

写法如下图:

飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码

(这里指出一个订单只能打印一个二维码,所以再开发的时候千万不要像我一样傻得为了节约纸,写了好几种方案只请求一次打印,这样的话人家只识别第一个码!)

但是怎么嵌套小程序码呢?这个时候我还不了解这个打印机,不知道它能不能打印更丰富的文本、图片、指定内容,或者奇形怪状的二维码?

然后我加群请教他们的开发人员,沟通之后他们表示只能打印满足标签的内容,也就是说刚刚的疑问,都不能满足。

也就是说并不能做到嵌入小程序的指定页面,只能做到嵌入小程序首页二维码的程度。方法是拿到自己小程序的方形二维码,然后用在线工具解析二维码,解析的结果当然是一个网址,然后将这个网址嵌入进标签打印即可,然后让我用这种方法试试。

然后我进行了发散式的思考,经过了反复尝试,想了各种方法,终于找到了解决办法(见标题二)。

以下内容,标题一先介绍 仅嵌入小程序首页(不带参) 的方法。

标题二则介绍 将小程序的指定页面做成普通链接,生儿二维码直接扫码打开 的方法

一、嵌入小程序首页

这里先介绍只要嵌入小程序首页的教程。

  1. 登陆微信公众平台,设置 - 基本设置 - 小程序码及线下物料下载。
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
  2. 点击 下载 - 普通二维码,获取方形写哦程序二维码。
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
  3. 用在线工具解析二维码
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
  4. 复制解析出来的网址,嵌入标签中
  1. 按照api打印即可,扫码则进入小程序首页,这里就不再展示示例了。

二、嵌入小程序指定页面

既然小程序可以转化为链接打开,那么我们能不能获取到我想要的那个页面的链接呢?

找了好久,抓包都用了,不得其法。。。

但是我找到了微信的一篇文档: 扫普通链接二维码打开小程序

通读之后,带着各种不确定性我做出了尝试,完全可行!

(这里还需要前端配合一下下,特此夸夸我们的前端老大哥,

虽然各种毒舌,但是还是热心的一个好青年,给赞! (๑•̀ㅂ•́)و✧ )

下面开始介绍步骤。

  1. 登录微信公众平台,找到 开发 - 开发设置
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
    下拉页面,找到如图所示的项目,默认是关闭的,好像是需要管理员扫码开启这个功能
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
  2. 添加一条规则,大致如下:
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码

    这里有一些需要注意的地方,可以仔细阅读官方文档了解一下: 传送门

    其中,测试范围 指的是此规则的生效范围,如果选择体验版或者开发版,那么在进入对应的链接的时候,会进入对应版本的小程序(体验版|开发版),这样的话前端改代码就不用发布到线上去测试了,这个功能真的是real棒棒棒了哈哈~~

    测试链接 指的是这条规则即使不发布,也可以生效去测试的意思,所以得加上具体的传参,反正超级方便。

  3. 将这条规则保存,到列表那里点击发布,管理员扫码。(发布前可配置测试链接提前测试使用)
  4. 小程序这边的页面,接收参数的格式得处理一下,如图:
    飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码
  5. 包装参数,打印
// 如尚未发布,这里的参数id需要跟配置的 “测试链接” 相同
	String content = "<QR>https://www.baidu.com/(随便填的子路径规则)?id=123</QR>";
           
  1. 打印出来的二维码,用微信去扫描,进去的就是你配置好的小程序页面了,还能带上参数,这样基本可以满足所有正常的需求了,这里不再举例放图。

总结

相信大家也看出来了,其实要让一个只能打印“包含简单内容”的二维码跳转别的内容,其实只要换个思路,让“小程序的跳转”变得简单就可以。

开发过程中如果遇到难题,多些想法,多搜百度,多去实践,或者与人交流探讨,都是可行之法。

最后的最后,如果我的文章帮到了你,拜托拜托给个赞吧~~

飞鹅小票打印机嵌入生成指定小程序页面二维码的解决方案 | 扫普通链接二维码打开小程序示例 | 生成正方形小程序码