每天吃一点Androidの二维码

目录:
1、有趣的问题:二维码为什么只有三个明显的边角?
2、二维码概述
3、二维码的UserAgent(UA)
4、Android&iOS共用二维码常见操作
5、ZXing的使用

Android小仙

一. 有趣的问题:二维码为什么只有三个明显的边角?

常见的二维码大多是有三个明显的边界的,有些右下角会有一个小一点的边角。看上去不太对称,那么为什么是这么设计的呢?
二维码上的三个边角是定位点。这种有三个定位点,或第四个边角很小的二维码是QR码,QR码是二维码的其中一种,也就是说并不是所有的二维码都是有且只有三个明显的边角的。
QR码之所有有三个边角是因为一个边角无法确定一个正方形,从一个点延伸出去可以有无数个正方形,而三个点可以确定一个面,四个点则无法判断正面是哪一面了。

二、二维码概述

二维码(dimensional barcode): 是指在一维码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息。
码元:是二维码上黑色和白色的小方块,一个方块就是一个码元,是二维码的基本单位。
分类

  • QR码:是目前国内最流行的二维码,渐渐成为国内的主流二维码了
  • Micro QR码
  • iQR码
2.1、QR码

上面提到有三个定位点的二维码是QR码的模型一,在三个定位点的基础上,右下角出现一个明显的小角的二维码是QR码的模型二。
模型二是模型一的升级,它支持在二维码变形的情况下读取数据。

2.2、Micro QR码

Micro QR码比QR码小,能存储的数据量也小,他只有一个定位点。

2.3、iQR码

iQR码是可以简单读取二维码位置和大小的矩阵式二维码。
可以生成比Micro QR尺寸更小的二维码,生成比普通QR码存储的数据量更大的二维码。而且,还可以制成长方形,支持内外翻转、黑白反色、圆点图案,应用范围极其广泛。
棒棒哒!

这里附上QR码的结构图:
(更多详细信息参考:扫了那么多二维码,二维码究竟是什么?)

QR码结构图,图片来自网络

三、二维码的UserAgent(UA)

扫描同一个二维码,跳转出来的页面可能不一样,这就是利用UserAgent来实现的
UserAgent: 是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
我们扫描二维码后,使用用户代理判断下一步往哪里操作。比如如果用户安装了某APP,那么直接跳转到APP内部,如果没有安装APP,判断是安卓系统还是iOS系统,如果是安卓系统跳转到安卓应用市场,如果是iOS系统就跳转到App Store。
这也可以称作是终端适配。
比如我们可以通过桥页来实现:做一个Html静态页面,所有逻辑控制都在这里面进行:判断终端、判断语言、判断渠道等等,然后通过该HTML页面对应的url生成一个二维码。

四、Android&iOS共用二维码常见操作

有些开发人员的操作相对自己写桥页来说简单些,他们将安卓版本上传到腾讯的应用宝上,然后将苹果版的下载地址也放到应用宝上,判断平台的操作就交给应用宝来完成。

五、ZXing 的使用

待续。。。

参考资料:

  • 产品经理小技术(三):二维码这把利刃,产品应该用到极致
  • 扫描二维码自动识别手机系统(Android/IOS)跳转不同页面
  • 扫了那么多二维码,二维码究竟是什么?

你可能感兴趣的:(每天吃一点Androidの二维码)