当前位置: 首页 > 面试题库 >

NFC标签上的图片

祁刚毅
2023-03-14
问题内容

使用最新的NFC标签,最多可以存储8k数据。因此,我想知道如何将图片存储在标签上,例如NXP TagWriter应用程序

我没有找到任何信息。谁能解释该怎么做?


问题答案:

您可以使用MIME类型记录将图像存储在NFC标签上。例如,如果您的图像是JPEG图像,则应使用MIME类型“ image /
jpeg”。您的NDEF记录可能如下所示:

+----------------------------------------+
+ MB=1, ME=1, CF=0, SR=0, IL=0, TNF=MIME +
+----------------------------------------+
+ Type Length = 10                       +
+----------------------------------------+
+ Payload Length = N                     +
+----------------------------------------+
+ image/jpeg                             +
+----------------------------------------+
+ <Your image data (N bytes)>            +
+----------------------------------------+

在Android上,您可以使用

byte[] myImage = ...;
NdefRecord myImageRecord = NdefRecord.createMime("image/jpeg", myImage);

或使用的构造函数NdefRecord

byte[] myImage = ...;
NdefRecord myImageRecord = new NdefRecord(
        NdefRecord.TNF_MIME_MEDIA,
        "image/jpeg".getBytes("US-ASCII"),
        null,
        myImage
);

一旦有了TagNDEF标签的句柄(即通过接收和NFC发现意图),就可以将NDEF记录写入标签:

NdefMessage ndefMsg = new NdefMessage(new NdefRecord[] { myImageRecord });

Tag tag = ...;
Ndef ndefTag = Ndef.get(tag);
if (ndefTag != null) {
    ndefTag.connect();
    ndefTag.writeNdefMessage(ndefMsg);
    ndefTag.close();
} else {
    NdefFormatable ndefFormatable = NdefFormatable.get(tag);
    if (ndefFormatable != null) {
        ndefFormatable.connect();
        ndefFormatable.format(ndefMsg);
        ndefFormatable.close();
    }
}


 类似资料:
  • 我一直在开发一个应用程序,它使用NFC标签做一些魔术。 一切都很好,直到最近,我改变了一些代码,这些代码与之前一直有效的NFC代码无关。 当我通过NFC点击启动我的应用程序时,所有的工作,当我点击应用程序运行时,我将在onNewIntent()中收到未来的NFCTag。 当我通过图标启动应用程序并在应用程序运行时尝试点击时,会调用onNewIntent()方法,但当我试图从intent中获取额外的

  • 本文向大家介绍详解Android平台上读写NFC标签,包括了详解Android平台上读写NFC标签的使用技巧和注意事项,需要的朋友参考一下 本文主要谈一谈Android上有关NFC标签的读写问题(NDEF格式)。 硬件环境:android4.0(Sony M35h)+可读可写的NFC标签若干 一、NFC基础知识 1.NFC是什么? NFC,即Near Field Communication,近距离

  • 我有ntag213,使用react-native-nfc-Manager和andriod一起使用,在我的标签留档https://www.nxp.com/docs/en/data-sheet/NTAG213_215_216.pdf我知道首先我需要验证命令0x1B0x2B和我的密码:0xFF1FFFFF

  • 那么NFC标签真的是独一无二的吗,至少在它们的序列号上是这样吗?我们能相信没有2个NFC标签可以具有相同的序列号吗?我对此高度怀疑,因为现在有(并且将会有更多)NFC标签,我认为没有人在控制序列号…… 我问的原因是我正在开发一个使用NFC标签的基于密钥的系统。我不需要写标签,我基本上只需要它们的序列号。但我需要它们真正独一无二。 此外,我想知道序列号是否可以被克隆(我知道标签的内容总是可以被读取和

  • 我正在尝试使用nfc android库读取ISO15693 RFID标签: 有关该标签的更多信息如下:http://img42.com/gw07d+

  • 我有一个阅读NFC类型A标签(非NDEF)的活动。我用Android手机在开发者模式下运行Android Studio。 该项目在开发者Android手机上正确启动应用程序,并在手机上打开NFC。当我轻触手机上的NFC非接触式卡时,手机会检测到NFC卡,但会显示手机上安装的其他NFC读卡器应用程序的选项列表,而不是将意图传递给前台应用程序。 如何让前台项目的应用程序接收NFC意图,而不是弹出建议列