前端 nfc读取扇区参数

编程入门 行业动态 更新时间:2024-10-22 21:38:17

前端 nfc读取<a href=https://www.elefans.com/category/jswz/34/1640977.html style=扇区参数"/>

前端 nfc读取扇区参数

背景: 由于各种厂商不同,有些厂商写卡有一下其他不支持的地方。所以由客户端读取扇区。网上参数很不详细,这边的经验希望能帮到大家。

  1. 前端-安卓读取
  2. 前端-sdk(我这边对接的是feishu,应该类似于小程序) 资料好难找,看网上只有部分小程序的,基本上都不符合。下面是我们这边已经实现的。注释里有代码说明
安卓读取扇区

这个对于前端来说就是纯方法的调用 直接上代码

//sassApp 代码基于vueconnectWebViewJavascriptBridge(callback) {if (window.WebViewJavascriptBridge) { return callback(WebViewJavascriptBridge); }if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); }window.WVJBCallbacks = [callback];var WVJBIframe = document.createElement('iframe');WVJBIframe.style.display = 'none';WVJBIframe.src = 'https://__bridge_loaded__';document.documentElement.appendChild(WVJBIframe);setTimeout(function () { document.documentElement.removeChild(WVJBIframe) }, 0)},connectWebViewJavascriptBridgeNfc() {let that = this// 方法由按照提供that.connectWebViewJavascriptBridge((bridge) => {bridge.callHandler('triggerNewlandCard', (responseData) => {});bridge.registerHandler("receiveNFC", function (data, responseCallback) {console.log("安卓读取扇区返回的data", data)}}}
前端-SDK
let adapter = window.htonejssdk.nfc.getNFCAdapter();
adapter.startDiscovery({success(res) {adapter.onDiscovered((res => {// 获取卡号uidsconst uidList = Array.from(new Uint8Array(res.uid));let mifareClassic = adapter.getMifareClassic()mifareClassic.connect({success(res2) {console.log('mifareClassic.transceive connect', res2)// 0x60-认证指令   0x03-扇区   uidList-卡ids    0xff x 6-秘钥mifareClassic.transceive({data: new Uint8Array([0x60, 0x03, ...uidList, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]).buffer,success(res3) {// 0x30-读取指令 0x30-扇区(这里需要和认证扇区保持一致,不然会报错)mifareClassic.transceive({data: new Uint8Array([0x30, 0x03]).buffer,success(res4) {let cardInfo = Array.from(new Uint8Array(res4.data));// 获取到卡的Array信息-转16进制(补0)---- 其他约定处理},fail(err4) {console.log(`mifareClassic.transceive fail 0x30: ${JSON.stringify(err4)}`)}})},fail(err3) {console.log(`mifareClassic.transceive fail 0x60: ${JSON.stringify(err3)}`)}})},fail(err) {console.log(`mifareClassic.connect fail: ${JSON.stringify(res)}`)}})))}
})

更多推荐

前端 nfc读取扇区参数

本文发布于:2023-12-03 07:09:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1652502.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:扇区   参数   nfc

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!