用于启动应用程序的NFC标签大小

时间:2015-04-13 12:07:38

标签: android nfc ndef android-applicationrecord

NFC概念的新手,想知道“启动应用程序”标签选项所需的标签大小(48,144或454字节),您只需输入要启动的应用程序包。

假设我的包名是标准尺寸:xxx.xxxxxxxxxxxx.xxxxx

2 个答案:

答案 0 :(得分:2)

对于Android应用程序记录(AAR),您需要以下内存:

  • NDEF标头字节:1个字节
  • NDEF类型长度字段:1个字节
  • NDEF有效负载长度字段:1-4个字节(对于此类记录通常为1个字节)
  • NDEF类型名称“android.com:pkg”(外部类型):15字节
  • AAR payload:UTF-8编码时的包名称长度(以字节为单位)。对于xxx.xxxxxxxxxxxx.xxxxx的示例,这将产生22个字节。

因此,NDEF消息(仅由AAR组成)有40个字节(当使用4字节有效负载长度字段时可能为43个字节)。

一旦知道了NDEF消息的大小,其余信息取决于您使用的标记类型。例如,使用NFC论坛类型2标签(例如MIFARE Ultralight和NTAG),您至少还有两个字节的开销:

  • NDEF TLV标记字段:1个字节
  • NDEF TLV长度字段:1个字节

此外,许多Type 2标签在用户存储区域内包含一个Memory Control TLV和/或一个Lock Control TLV块(每个5字节)。

另请注意,某些供应商会参考整体标记大小(包括标记元数据不能用于实际NDEF数据的内存区域)而不是可用的用户内存。

答案 1 :(得分:1)

你可以逃脱48个字节。一种常见的方法是在标记上放置一些URL - 在此URL后面提供app-install(对于尚未安装应用程序的情况) - 如果安装了应用程序,则会打开(使用此URL的intent-filter) )。当你发现一些url =< 48字节符合您的需求,您应该能够使用48byte-NFC-Cards