我正在Android中开发一个关于NFC标签的应用程序。当我使用IsoDep和APDU将空NdefMessage写入NFC标签时,当我收到新意向时,我是否能够收到NDEF_DISCOVERED意向?
目前,我只会得到一个ACTION_TECH意图,我想知道写的APDU是否错误,或者当写一个空的NDEFMESSAGE时,NDEF_DISCOVERED是否是不可能的。
实际上没有空的NdefMessage
和NdefMessage
,实际上只是正确格式化的NdefRecords
的数组
如果您阅读了NDef规范https://github.com/haldean/ndef/blob/master/docs/NFCForum-TS-NDEF_1.0.pdf
消息只是一系列Ndef记录;消息开始";记录标志集和最后一个具有"0"的标志集;消息结束";记录标志集。
如果你看看安卓的源代码https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/nfc/NdefMessage.java#63
如果数组中没有记录,则NdefMessage
为null。
因此,您正在向标签写入零字节,Android NFC系统应用程序无法将其识别为非空白标签。