微信小程序nfc指令异常记录

小程序nfc相关代码:

javascript 复制代码
readEvent(){
    
    wx.getNFCAdapter().startDiscovery({
      success:(res)=>{
        console.log('--------------start--------')
        console.log(res);
        wx.getNFCAdapter().onDiscovered(
          callback=>{
            console.log('------------onDiscovered----------')
            console.log(callback);
            console.log(Array.from(new Uint8Array(callback.id)))
            console.log('------------getNfcA----------')
            console.log('------------connect----------')
            wx.getNFCAdapter().getNfcA().connect({
              success:(res)=>{
                console.info(res)
                console.log('------------transceive----------')
                wx.getNFCAdapter().getNfcA().transceive({
                  data: new Uint8Array([0x30, 0x04]).buffer, // 必须要传入 ArrayBuffer
                  success: (res) => {
                      // res.data 是 ArrayBuffer,转成数组方便查看
                      console.log(Array.from(new Uint8Array(res.data)));
                  },
                  fail:(err)=>{
                    console.log(err)
                  }
              })
              
              },
              fail:(err)=>{
                console.error(err);
              }
            })
          }
        );
      },
      fail:(err)=>{

      }
    });
    
  },

connect 成功但是指令报错,报错信息:

transceive:fail:system internal error:tag was lost

解决方式,替换NfcA

javascript 复制代码
readEvent(){
    
    wx.getNFCAdapter().startDiscovery({
      success:(res)=>{
        console.log('--------------start--------')
        console.log(res);
        wx.getNFCAdapter().onDiscovered(
          callback=>{
            console.log('------------onDiscovered----------')
            console.log(callback);
            console.log(Array.from(new Uint8Array(callback.id)))
            console.log('------------getNfcA----------')
            console.log('------------connect----------')
            wx.getNFCAdapter().getIsoDep().connect({
              success:(res)=>{
                console.info(res)
                console.log('------------transceive----------')
                wx.getNFCAdapter().getIsoDep().transceive({
                  data: new Uint8Array([0x30, 0x04]).buffer, // 必须要传入 ArrayBuffer
                  success: (res) => {
                      // res.data 是 ArrayBuffer,转成数组方便查看
                      console.log(Array.from(new Uint8Array(res.data)));
                  },
                  fail:(err)=>{
                    console.log(err)
                  }
              })
              
              },
              fail:(err)=>{
                console.error(err);
              }
            })
          }
        );
      },
      fail:(err)=>{

      }
    });
    
  },
相关推荐
小羊Yveesss2 小时前
模板建站哪个平台好?模板数量之外还要比较编辑与SEO能力
大数据·人工智能·小程序
2501_916007473 小时前
深入理解HTTPS对称与非对称加密机制及Charles抓包实践
网络协议·http·ios·小程序·https·uni-app·iphone
郑州光合科技余经理3 小时前
家政O2O平台解析:从0搭建上门预约小程序解决方案
android·java·开发语言·前端·小程序·架构·php
维双云3 小时前
小程序商城制作一个需要多少钱?2026报价明细与成本拆解
小程序
电商API_180079052475 小时前
导购比价小程序场景|京东联盟商品详情对接方案|多规格图文拉取技术实操
网络·小程序·网络爬虫
北极糊的狐5 小时前
钉钉小程序 Git 版本管理完整流程
git·小程序·钉钉
码农学院5 小时前
微信小程序云开发实战:扫码点餐系统的高并发订单处理与外卖接单架构
微信小程序·架构·notepad++
凡泰AI1 天前
如何借助MCP打通企业APP内部服务:从统一调用到小程序承接
小程序·uni-app·app·mpaas·mcp·小程序容器
这是个栗子1 天前
uni-app 微信小程序开发:常用函数总结(一)
微信小程序·小程序·uni-app·getcurrentpages
投票竞赛1 天前
书法、绘画作品投票评选,图片投票小程序作品集排版
python·小程序