所以我找到了这个问题的一些解释。并创造了某种解决方案。
问题是android的NFC库中的函数总是创建一个NDEF短消息,消息长度存储在一个字节中。这意味着 ndef 部分的最大长度仅为 256 字节。为什么 NXP-s OWN 程序发现这个标签只是 238 字节......好吧,因为它内部肯定有一些错误,更好的 android 在处理 NFC 时有一些严重的问题,因为使用微软 Lumia 这个标签发现为 888 字节长而没有任何问题。
最后,解决方案是使用高级 NFC 类并将其逐字节写入。它将更好地理解整个 NFC 的工作原理。有了这个,你可以创建自己的消息协议,比这个 NDEF 更好。对我来说,解决方案是在内存末尾使用额外的四个字节。有了这个,我可以处理比这个标签可以存储的更长的消息(2^32)。如果标签中存在 Ndef,我还会在这四个字节中指出,因为在这种情况下,我必须剪切消息的前 7 个字节。是的,您可能会发现我已经手动创建了消息的 ndef 部分(为了兼容性,我需要消息的某些部分可以被任何应用程序读取)。我只写短消息,因为 android 和 Lumia 的长消息不同(Lumia 无法读取 android 写的内容,反之亦然)。
因此,如果您想将整个内存与 android 一起使用并使用 nfc 高级功能,请享受编程的美好时光 :)。我希望在 Windows Phone 操作系统中会更容易。