NFC消息一次可以发送多少个字符?

时间:2012-03-13 20:46:49

标签: android nfc

假设我们将使用UTF-8编码,并且NDEFRecord类型为Text或URI:

可以将多少个字符放入带有TEXT类型的NDEF记录中?是否有任何角色限制?

URI类型NDEF记录怎么样,对URI的字符大小有什么限制?

3 个答案:

答案 0 :(得分:6)

NDEF规范将NDEF有效负载限制为(2 ^ 32-1)字节,因此制作大型记录不应该成为问题。真正的限制来自您要存储它的硬件。例如,MIFARE Standart有1K或4K版本。因此,请检查卡的内存功能。

答案 1 :(得分:3)

当你在问题中写下“可以发送”时,我认为你的意思是“可以在手机之间发送”。 (对于写入标记,标记的内存容量是主要限制。Ndef技术方法getMaxSize()将返回适合标记的最大NDEF消息大小,如此处的另一个答案所述。我遇到的最大标签可以存储32kB的NDEF数据,但这需要很长时间才能读取。)

单个NDEF消息可以包含多个NDEF记录。因此,单个NDEF消息的大小没有真正的理论最大值。在NDEF记录中使用Chunk Flag,甚至允许通过将它分布在多个记录“块”上来扩展单个记录的有效载荷超出(2 ^ 32-1)字节的边界。

使用setNdefPushMessage在手机之间发送点对点NDEF消息时,实际情况还取决于发送/接收数据所花费的时间。 NFC非常适合交换少量数据,但如果需要将手机连在一起几秒钟来执行数据传输,则会变得不方便。所以在实践中,你可能不会超过大约1kB。

顺便说一句:要发送很长的网址,我建议使用网址缩短服务,例如http://goo.gl/

答案 2 :(得分:0)

您需要查询NDEF接口的最大大小。并不保证所有设备都保持一致。

点击此处:http://developer.android.com/reference/android/nfc/tech/Ndef.html