HarmonyOS鸿蒙Next中NfcB.transmit的使用方法
HarmonyOS鸿蒙Next中NfcB.transmit的使用方法
if (nfcB != null && typeof nfcB.transmit === 'function') {
hilog.info(0x0000, 'NFCardReader', 'nfcB is valid and supports transmit method.');
const transmitPromise = nfcB.transmit(Array.from(ipara));
if (!(transmitPromise instanceof Promise)) {
hilog.error(0x0000, 'NFCardReader', 'nfcB.transmit did not return a Promise.');
} else {
transmitPromise
.then((result: number[]) => {
hilog.info(0x0000, 'NFCardReader', 'nfcB.transmit completed.');
// 处理成功的结果
InputReport = new Uint8Array(result);
resultData = result;
console.log("InputReport data", NFCardReader.printHexString(InputReport));
})
.catch((error: Error) => {
hilog.error(0x0000, 'NFCardReader', `Error during transmit: ${error.message}`);
});
}
} else {
hilog.error(0x0000, 'NFCardReader', 'nfcB is invalid or does not support transmit method.');
}
console.log("NfccallbacksousbWrite pr2");
为什么开头和结尾的打印语句都打印了,但是then代码块里面的没有。为什么不执行then?
更多关于HarmonyOS鸿蒙Next中NfcB.transmit的使用方法的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
您好,能麻烦提供一下完整的demo吗,我这里复现一下。
更多关于HarmonyOS鸿蒙Next中NfcB.transmit的使用方法的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS(鸿蒙Next)中,NfcB.transmit
用于与NFC-B(ISO 14443-4B)标签进行数据交换。首先,确保设备支持NFC并已初始化NfcB对象。通过NfcB.connect()
建立连接后,使用transmit(byte[] data)
发送指令数据,并接收标签的响应。示例代码如下:
NfcB nfcB = NfcB.getDefaultAdapter(context);
nfcB.connect();
byte[] response = nfcB.transmit(new byte[]{...}); // 发送指令
nfcB.close();
注意处理异常和权限,确保应用具有android.permission.NFC
权限。