最近我们硬件设备需要增加类似支付宝的碰一碰功能 ,相对扫码 碰一碰感觉更快捷。

随意,查阅资料 实践下,记录下

  网上标签很多种,微信支持其中一个种可以唤醒拉起小程序的(这里安卓是可以直接跳小程序,ios由于微信只给出提示消息标签,再由标签跳转)

  NTAG213/215/216

类似 网上还有各种超薄款

然后呢 购入一台读写器

类似

使用 送的软件

就可以自己写入信息

这里 特别说明2点,

第一 要唤醒微信小程序 官方在小程序申请nfc功能和唤醒能力,这里需要通过审核后的接口 给出静态的地址,在按照先写入URI,再写入AAR两条记录

AAR记录如上图

最终写入白卡的信息如图

Record#1
INF:1
type:"U"
URI field:weixin://dl/business/?t=kOddpDGNe9o
Record#2
INF:4
type:"android.com:pkg"
"com.tencent.mm"

写入还可以加锁 变成只读卡 方便加密 不被人串改。

第二 只写入设备id ,安卓设备微信小程序可以读取nfc,IOS无法实现微信没开放,只有原生app可以调用,没有ios app的只能走微信的url schema方式

补充下,硬件识别需要再url附加参数,这个再微信小程序申请静态链接,每个设备都需要(目前静态链接只能这样)

类似这种

{
  "jump_wxa": {
    "path": "/pages/index/index", // 你的小程序启动页面
    "query": "sn=863912234345678&other_param=lzkqxs" // 这里自定义参数
  }
} 

小程序在跳转页面就可以使用代码接收到参数

类似 

  // /pages/index/index.js 页面的代码
Page({
  onLoad(options) {
    // options 对象中就包含了从NFC链接传递过来的所有参数
    console.log(options.sn); // 打印输出:SN123456
    console.log(options.other_param); // 打印输出:value
    
    // 拿到sn后,你就可以用它去你的服务器查询当前绑定的动态设备号
    const deviceNumber = this.getDeviceNumberFromCloud(options.sn);
  },

Over!! 想到再补充!!

更多推荐