【发布时间】:2021-11-11 09:03:48
【问题描述】:
我正在尝试从 ISO-15693 NFC 标签读取多个块,每当我开始读取它时都会收到此错误
Error Domain=NFCError Code=102 "标签响应错误" UserInfo={NSLocalizedDescription=标签响应错误, ISO15693TagResponseErrorCode=2}
这就是我尝试阅读它的方式
tagHandler(NFCISO15693Tag.self, arguments, result) { tag in
let requestFlags = getRequestFlags(arguments["requestFlags"] as! [String])
let blockNumber = arguments["blockNumber"] as! Int
let numberOfBlocks = arguments["numberOfBlocks"] as! Int
tag.readMultipleBlocks(requestFlags: requestFlags, blockRange: NSMakeRange(blockNumber, numberOfBlocks)) { dataBlocks, error in
if let error = error {
result(getFlutterError(error))
} else {
result(dataBlocks)
}
}
}
但是我设法通过将请求标志更改为 [.highDataRate] 来读取单个块,但此更改对 readMultipleblocks 命令没有帮助
tagHandler(NFCISO15693Tag.self, arguments, result) { tag in
let requestFlags = getRequestFlags(arguments["requestFlags"] as! [String])
let blockNumber = arguments["blockNumber"] as! UInt8
tag.readSingleBlock(requestFlags: [.highDataRate], blockNumber: blockNumber) { dataBlock, error in
if let error = error {
result(getFlutterError(error))
} else {
result(dataBlock)
}
}
}
我找不到很多关于从 ISO-15693 标签中读取多个块的示例或资源,因此任何信息或示例都会有所帮助!谢谢!
【问题讨论】: