wifi 二维码生成
小米手机的 wifi 可以生成二维码,通过扫码连接 wifi。当然,凡事都是两面性,好的方面,当然是即使忘记密码,也能让另一台手机连上网络,而且不用手输入密码;而坏的方面是,二维码是可解析的,知道二维码就知道 wifi 的密码。
二维码知识
本节内容来自 二维码知识
二维码格式
类型 | 说明 |
---|---|
文本 text | 直接生成,无需处理 |
网址 url | 直接生成,无需处理(如果前缀加上 url: 在微信中不能自动跳转) |
名片 mecard | MECARD:N: 小明;TEL:13723456789;EMAIL:payonesmile@qq.com;ADR: 广州天河区;ORG:xx 有限公司;URL:http://pro.wwei.cn/;NOTE:QQ:13783821; |
电话 tel | tel:13723456789 |
邮箱 mail | mailto:payonesmile@qq.com |
短信 sms | smsto:13723456789: 短信内容 |
无线网络 WIFI | WIFI:S:CMCC;P:123456;T:WPA/WPA2; |
二维码纠错级别
纠错级别越高,生成图片会越大。
L 水平 7%的字码可被修正
M 水平 15%的字码可被修正
Q 水平 25%的字码可被修正
H 水平 30%的字码可被修正
WIFI 二维码
We propose a syntax like “MECARD” for specifying wi-fi configuration. Scanning such a code would, after prompting the user, configure the device’s Wi-Fi accordingly. Example:
1 |
|
Parameter | Example | Description |
---|---|---|
T | WPA | Authentication type; can be WEP or WPA or WPA2-EAP , or nopass for no password. Or, omit for no password. |
S | mynetwork | Network SSID. Required. Enclose in double quotes if it is an ASCII name, but could be interpreted as hex (i.e. “ABCD”) |
P | mypass | Password, ignored if T is nopass (in which case it may be omitted). Enclose in double quotes if it is an ASCII name, but could be interpreted as hex (i.e. “ABCD”) |
H | true | Optional. True if the network SSID is hidden. Note this was mistakenly also used to specify phase 2 method in releases up to 4.7.8 / Barcode Scanner 3.4.0. If not a boolean, it will be interpreted as phase 2 method (see below) for backwards-compatibility |
E | TTLS | (WPA2-EAP only) EAP method, like TTLS or PWD |
A | anon | (WPA2-EAP only) Anonymous identity |
I | myidentity | (WPA2-EAP only) Identity |
PH2 | MSCHAPV2 | (WPA2-EAP only) Phase 2 method, like MSCHAPV2 |
Order of fields does not matter. Special characters \
, ;
,
, and :
should be escaped with a backslash (\
) as in MECARD encoding. For example, if an SSID was literally "foo;bar\baz"
(with double quotes part of the SSID name itself) then it would be encoded like: WIFI:S:"foo\;bar\\baz";;
实现
这里就不描述如何编写的了,代码在 github 开源,下面演示一下:
wifi 二维码生成
https://bubao.github.io/posts/47df24a0.html