我正在研究NFC。我能够在标签上写消息。一切都工作正常,但当我试图擦除标签时,它不起作用,我不知道为什么。这是我的代码:
Tag mytag = getIntent().getParcelableExtra(NfcAdapter.EXTRA_TAG);
NdefFormatable formatable = NdefFormatable.get(mytag);
if (formatable != null) {
formatable.connect();
formatable.format(methodGetMsg());
formatable.close();
}
我总是得到可上映的价值null
。
答案 0 :(得分:1)
由于您的标记已经列出了android.nfc.tech.Ndef技术,因此它已准备好存储NDEF消息,不需要进一步格式化。您可以使用Ndef对象的writeNdefMessage()方法简单地覆盖(假设标记不是只读的)任何现有的NDEF消息。例如。到"格式"标签为空的NDEF消息,您可以执行以下操作:
Ndef ndefTag = Ndef.get(tag);
ndefTag.writeNdefMessage(new NdefMessage(new NdefRecord(NdefRecord.TNF_EMPTY, null, null, null)));
取自here