一、背景
前几天有文章讲到NFC支付(见: 短距离无线通讯-NFC),但NFC支付毕竟还是比较小众,主要是因为二维码实在是太强大太深入人心了,有个大佬在很早的时候就说过二维码是连接线上线下的桥梁,是连接现实与虚拟最得力的一个工具,到今天街头卖烤串的,人人都有二维码,今天我们就来简单了解一下。
二、二维码概念
二维码是按某种特定的几何形状以一定的规律在平面上分布,黑白相间记录数据符号的图形。
三、二维码与一维码的区别
一维码也称为条码,它是在一个方向上表达信息,它只能够存储数字或字符,一维码的具体编码类型可以看 扫码枪的那些事 这篇文章。
而二维码由多行组成,每一行有起始部分,数据部分和终止部分,它可以包含汉字。
四、二维码分类
按原理分
1、行排式二维码
行排式二维码是建立在一维码基础上,按需排成多行,代表的编码格式有PDF147、Code49等.
2、矩阵式二维码
在一个矩阵空间通过黑白像素进行编码,点出现表示 “1“,不出现表示”0“,代表有QRCode、田字码等
按业务分
1、被读类业务
用户在使用时被识别设备进行读取,作为交易或身份凭证来支撑各种应用,如微信或支付宝付款码。
2、主读类业务
用户在手机上安装二维码客户端(如微信或支付宝的扫码功能),拍摄二维码图片,获取二维码所存储的内容并触发相关应用,如微信扫码付钱,微信扫码出现行程码等。
五、QRCode二维码实现
QRCode是最常见的二维码编码格式,我们在开发时可以引用Google的ZXing包来生成和识别二维码,Java和Android有对应的包,下面的例子是引用Java的两个包ZXing-core和ZXing-j2se。
另外,我通过上面读取的代码读取我微信的付款码,读取的结果如下。
wxp://f2f083nJJtO6Ls1ZzuXHj8MvpDgwolqbRPOptT8u61UD2Rw
六、二维码的应用场景
你所能想得到的场景都可以用二维码,下次介绍一下二维码在分销场景中的应用。