使用 makeReadOnly() 抛出失败错误的写锁 Ntag 424DNA

Write lock Ntag 424DNA using makeReadOnly() throwing failed error

提问人:AnAndHu S 提问时间:9/22/2020 更新时间:9/22/2020 访问量:438

问:

使用此插件创建 react 原生 NFC 读/写应用程序 https://github.com/whitedogg13/react-native-nfc-manager ->。 但是在将 NDEF 记录写入标记后,我无法写入锁定。

try{
await NfcManager.writeNdefMessage(bytes)
        .then(()=>NfcManager.makeReadOnlyAndroid())//Write_lock android
        .then((result)=>{
          console.log("Make read Only result:->",result);
        });
}
catch (ex) {
      console.warn('exception', ex);
      _cleanUp();
     
    }

NDEF 记录已成功写入,但写入锁定失败。 下面给出的是使用的标签信息。

{
   "canMakeReadOnly":false,
   "id":"043743CE80",
   "isWritable":true,
   "maxSize":254,
   "ndefMessage":[],
   "techTypes":[
      "android.nfc.tech.IsoDep",
      "android.nfc.tech.NfcA",
      "android.nfc.tech.Ndef"
   ],
   "type":"NFC Forum Type 4"
}

相同的标签可通过恩智浦“TagWritter”android移动应用程序进行写入锁定。

他们是否有任何方法使用 transceive() 方法来锁定/更改特定的“锁定位”或启动一些用于 NFC 写入锁定的自定义命令。

Android React-Native NFC 读写锁

评论


答:

0赞 Andrew 9/22/2020 #1

你确定这是使用此库制作 ReadOnly 的正确方法吗,请参阅 https://github.com/whitedogg13/react-native-nfc-manager/issues/66 示例

是的,您应该能够将命令直接接收到功能容器 (CC) 文件,以写入此标准文件。ISOUpdateBinary

详细信息在芯片 https://www.nxp.com/docs/en/data-sheet/NT4H2421Gx.pdf 的数据表中,更多详细信息在 NFC Type 4 规格 http://apps4android.org/nfc-specifications/NFCForum-TS-Type-4-Tag_2.0.pdf

但是,当您可以调用 https://developer.android.com/reference/android/nfc/tech/Ndef#makeReadOnly() 的本机方法时,这是一项艰巨的工作

(这是图书馆正在做的事情)

评论

0赞 AnAndHu S 9/23/2020
感谢您的回复。我尝试了样品..由于标签不是NDEF格式,因此无法使用NDEFwrite进行“只读”。
0赞 Andrew 9/23/2020
您的评论“由于标签不是 NDEF 格式”是不合逻辑的,如果它不是 NDEF 格式表,那么在您的问题中“但是在将 NDEF 记录写入标签后我无法写入锁定”并尝试调用 to 与此语句相反,并且与数据表相反。您无法格式化此卡或写入只读配置更改的唯一原因是因为它已经是只读的。writeNdefMessage